Réponses:
ALTER TABLE users
ADD COLUMN "priv_user" BOOLEAN DEFAULT FALSE;
vous pouvez également spécifier directement NOT NULL
ALTER TABLE users
ADD COLUMN "priv_user" BOOLEAN NOT NULL DEFAULT FALSE;
UPDATE : ce qui suit n'est vrai que pour les versions antérieures à postgresql 11.
Comme Craig l'a mentionné sur les tableaux remplis, il est plus efficace de le diviser en étapes:
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;
, puis UPDATE users SET priv_user = 'f';
et enfin si vous en avez besoin ALTER TABLE users ALTER COLUMN priv_user SET NOT NULL;
.
Si vous voulez une colonne booléenne réelle:
ALTER TABLE users ADD "priv_user" boolean DEFAULT false;
Juste pour référence future, si vous avez déjà une colonne booléenne et que vous voulez simplement ajouter une valeur par défaut, faites:
ALTER TABLE users
ALTER COLUMN priv_user SET DEFAULT false;
Si vous utilisez postgresql, vous devez utiliser le type de colonne BOOLEAN en minuscules comme booléen.
ALTER TABLE utilisateurs ADD "priv_user" booléen DEFAULT false;
Dans psql, modifier la syntaxe de requête de colonne comme celle-ci
Alter table users add column priv_user boolean default false ;
valeur booléenne (vrai-faux) enregistrer dans la base de données comme valeur (tf) .
boolean
colonne réelle ?