根据雪花的官方文档,雪花不强制执行任何约束,expect不为null。在create语句中,强制或不强制的用法是什么。示例查询:
创建或替换表mytable ( c1 varchar约束pk_constraint主键强制,c2 varchar );
https://docs.snowflake.com/en/sql-reference/sql/create-table-constraint.html
发布于 2021-06-10 04:33:28
如果你继续深入到文档中,你会发现以下解释:
雪花中的
引用完整性约束是信息性的,除NULL外,不强制执行。非NULL以外的约束被创建为禁用。然而,约束提供了宝贵的元数据。主键和外键使您的项目团队成员能够使自己适应模式设计,并熟悉表之间的关系。此外,大多数商业智能(BI)和可视化工具都使用表导入外键定义,并构建适当的连接条件。这种方法节省了您的时间,并且可能不像后来不得不猜测如何加入表然后手动配置工具的人那样容易出错。基于主键和外键的联接也有助于确保设计的完整性,因为联接不会留给不同的开发人员来解释。一些BI和可视化工具还利用约束信息将查询重写为更有效的形式,例如连接消除。
https://stackoverflow.com/questions/67913374
复制相似问题