如何一次性移除Snowflake数据库中多列的NOT NULL约束
在Snowflake中删除NOT NULL约束的正确方法
你尝试的几种写法都不符合Snowflake的语法规范,问题集中在这些点:
- Snowflake不支持
modify column语法,需使用ALTER COLUMN NOT NULL属于列级约束,不能用DROP CONSTRAINT语法删除(该语法针对表级命名约束)- 存在语法结构错误,比如多余逗号、关键字顺序错误
正确的操作命令
有两种可行方式:
- 直接删除NOT NULL约束
ALTER TABLE tablename ALTER COLUMN colname DROP NOT NULL;
- 重新定义列数据类型(不指定NOT NULL)
如果需要确认列的数据类型,也可以重新声明类型但去掉NOT NULL,同样能移除约束:
ALTER TABLE tablename ALTER COLUMN colname SET DATA TYPE datatype;
内容的提问来源于stack exchange,提问作者Omkar More
相关产品推荐
相关产品推荐

