我有一个非空列的表,如何在此列中将空值设置为默认值?
我的意思是,我想做这样的事情:
postgres=# ALTER TABLE person ALTER COLUMN phone SET NULL;
但它显示:
postgres=# ALTER TABLE person ALTER COLUMN phone SET NULL;
ERROR: syntax error at or near "NULL"
LINE 1: ALTER TABLE person ALTER COLUMN phone SET NULL;
答案 0 :(得分:149)
ALTER TABLE person ALTER COLUMN phone DROP NOT NULL;
手册中的更多详细信息:http://www.postgresql.org/docs/9.1/static/sql-altertable.html
答案 1 :(得分:20)
以此格式执行命令
ALTER TABLE tablename ALTER COLUMN columnname SET NOT NULL;
用于将列设置为非null。
答案 2 :(得分:13)
First, Set :
ALTER TABLE person ALTER COLUMN phone DROP NOT NULL;
答案 3 :(得分:5)
以这种格式执行命令:
ALTER [ COLUMN ] column { SET | DROP } NOT NULL