PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

postgresql - ajoute une colonne booléenne à la table définie par défaut

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;

MISE À JOUR  : 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;