SERIAL
le colonne sono memorizzate come INTEGER
s, dando loro un valore massimo di 2-1. Quindi, dopo circa 2 miliardi di inserimenti, il tuo nuovo id
i valori non si adatteranno più.
Se ti aspetti così tanti inserti nel corso della vita del tuo tavolo, crealo con un BIGSERIAL
(internamente un BIGINT
, con un massimo di 2-1).
Se scopri in seguito che un SERIAL
non è abbastanza grande, puoi aumentare le dimensioni di un campo esistente con:
ALTER TABLE raw ALTER COLUMN id TYPE BIGINT;
Nota che è BIGINT
qui, anziché BIGSERIAL
(poiché i serial non sono tipi reali ). E tieni presente che, se hai effettivamente 2 miliardi di record nella tua tabella, questo potrebbe richiedere un po' di tempo...