Cette syntaxe postgresql est-elle appropriée pour ajouter une colonne à une table avec une valeur par défaut de false
ALTER TABLE users
ADD "priv_user" BIT
ALTER priv_user SET DEFAULT '0'
Merci!
sql
postgresql
1252748
la source
la source
boolean
colonne réelle ?Réponses:
vous pouvez également spécifier directement NOT NULL
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:
la source
ALTER TABLE users ADD COLUMN priv_user BOOLEAN;
, puisUPDATE users SET priv_user = 'f';
et enfin si vous en avez besoinALTER TABLE users ALTER COLUMN priv_user SET NOT NULL;
.Si vous voulez une colonne booléenne réelle:
la source
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:
la source
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;
la source
Dans psql, modifier la syntaxe de requête de colonne comme celle-ci
valeur booléenne (vrai-faux) enregistrer dans la base de données comme valeur (tf) .
la source