LINUX.ORG.RU

История изменений

Исправление Legioner, (текущая версия) :

2)

The oid type is currently implemented as an unsigned four-byte integer. Therefore, it is not large enough to provide database-wide uniqueness in large databases, or even in large individual tables. So, using a user-created table's OID column as a primary key is discouraged. OIDs are best used only for references to system tables.

я так понимаю, если ты создаешь таблицу WITH OIDS, то туда больше 4 миллиардов строк не засунешь, будет выкидывать ошибку.

И как в таких обстоятельствах решать эту проблему(в теории)?

Создать новую таблицу идентичную старой с id bigint, залить содержимое старой в новую, удалить foreign keys на эту таблицу, удалить старую, переименовать новую, добавить foreign keys (изменив oid на id) переписать запросы.

Исходная версия Legioner, :

2)

The oid type is currently implemented as an unsigned four-byte integer. Therefore, it is not large enough to provide database-wide uniqueness in large databases, or even in large individual tables. So, using a user-created table's OID column as a primary key is discouraged. OIDs are best used only for references to system tables.

я так понимаю, если ты создаешь таблицу WITH OIDS, то туда больше 4 миллиардов строк не засунешь, будет выкидывать ошибку.

И как в таких обстоятельствах решать эту проблему(в теории)?

Создать новую таблицу идентичную старой с id bigint, залить содержимое старой в новую, удалить старую, переименовать новую, переписать запросы.