小编典典

PostgreSQL-将布尔列添加到表集默认

sql

这是正确的postgresql语法,用于向表中添加默认值为的列吗 false

ALTER TABLE users
ADD "priv_user" BIT
ALTER priv_user SET DEFAULT '0'

谢谢!


阅读 150

收藏
2021-04-15

共1个答案

小编典典

ALTER TABLE users
  ADD COLUMN "priv_user" BOOLEAN DEFAULT FALSE;

您也可以直接指定NOT NULL

ALTER TABLE users
  ADD COLUMN "priv_user" BOOLEAN NOT NULL DEFAULT FALSE;

UPDATE :以下仅适用于PostgreSQL 11之前的版本。

正如克雷格(Craig)在已填充表格中提到的,将其拆分为多个步骤更为有效:

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;
2021-04-15