Risposte:
ALTER TABLE users
ADD COLUMN "priv_user" BOOLEAN DEFAULT FALSE;
puoi anche specificare direttamente NOT NULL
ALTER TABLE users
ADD COLUMN "priv_user" BOOLEAN NOT NULL DEFAULT FALSE;
AGGIORNAMENTO : il seguito è vero solo per le versioni precedenti a postgresql 11.
Come Craig ha menzionato su tavoli pieni, è più efficiente dividerlo in passaggi:
ALTER TABLE users ADD COLUMN priv_user BOOLEAN;
UPDATE users SET priv_user = 'f';
ALTER TABLE users ALTER COLUMN priv_user SET NOT NULL;
ALTER TABLE users ALTER COLUMN priv_user SET DEFAULT FALSE;
ALTER TABLE users ADD COLUMN priv_user BOOLEAN;
, quindi UPDATE users SET priv_user = 'f';
e infine se necessario ALTER TABLE users ALTER COLUMN priv_user SET NOT NULL;
.
Se si desidera una colonna booleana effettiva:
ALTER TABLE users ADD "priv_user" boolean DEFAULT false;
Se stai usando postgresql, devi usare il tipo di colonna BOOLEAN in minuscolo come booleano.
Gli utenti di ALTER TABLE AGGIUNGONO "priv_user" booleano DEFAULT false;
In psql alterare la sintassi della query in questo modo
Alter table users add column priv_user boolean default false ;
valore booleano (true-false) salvato nel valore del DB like (tf) .
boolean
colonna effettiva ?