postgresql - 在表中添加布尔列并设置默认值

30 浏览
0 Comments

postgresql - 在表中添加布尔列并设置默认值

这是添加带有默认值为false的列的正确postgresql语法吗?

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

谢谢!

admin 更改状态以发布 2023年5月21日
0
0 Comments

如果您想要一个实际的布尔列: \n

ALTER TABLE users ADD "priv_user" boolean DEFAULT false;

0
0 Comments

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

你也可以直接指定 NOT NULL

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

更新:以下内容只适用于 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;

0