我有如下的 sql 查询
ALTER TABLE "db"."Ft" ADD CONSTRAINT "Dname" DEFAULT ((0)) FOR "cname"
当我尝试在 snowflake 中执行上述代码时。
我收到类似“unexpected 'DEFAULT
”的错误。
答案 0 :(得分:0)
不幸的是,这样的操作是不可能的。
<块引用>下表描述了支持/不支持的修改列属性的操作:
为列添加默认值。不支持
另一种方法是使用包含 DEFAULT 和重新填充数据的新定义重新创建表。
另一个选项是添加新列、复制数据和重命名列:
ALTER TABLE dbo.Ft ADD COLUMN cnmame2 STRING NOT NULL DEFAULT 0;
UPDATE TABLE dbo.Ft SET cname2 = cname;
ALTER TABLE dbo.Ft DROP COLUMN cname;
ALTER TABLE dbo.Ft RENAME COLUMN cname2 to cname;