PostgreSQL-默认情况下,将布尔列添加到表集中
技术问答
163 人阅读
|
0 人回复
|
2023-09-14
|
这是正确的postgresql将默认值添加到表中的语法列吗 false
) d8 v0 K8 u7 n( @ALTER TABLE usersADD "priv_user" BITALTER priv_user SET DEFAULT '0'谢谢!3 y3 v4 ~7 B9 L8 O( X$ v5 |
; X6 `; S9 h1 y! C. @) S# v- z 解决方案:
) l& P8 G j0 t7 a6 t ALTER TABLE users ADD COLUMN "priv_user" BOOLEAN DEFAULT FALSE;您也可以直接指定NOT NULL5 z+ W7 u, `" Y3 o0 m
ALTER TABLE users ADD COLUMN "priv_user" BOOLEAN NOT NULL DEFAULT FALSE;UPDATE :以下仅适用于PostgreSQL 11之前的版本。
# }" L% b& H* p5 N正如克雷格(Craig)填充表中提到的分为多个步骤更有效:
8 Y2 N4 N" s3 _1 V$ r' G# uALTER 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; |
|
|
|
|
|