暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

单列约束格式 _GBASE南大通用分享

原创 三金先生 2023-12-13
142

单列约束格式 

使用单列约束格式将一个或多个约束与单列关联。 

单列约束格式 


如果表包含数据,则您不能在新列上指定主键或唯一约束。然而在唯一约束的情况下,表可以包含 行的数据。如果希望添加带有主键约束的列,则发出 ALTER TABLE 语句时表必须为空。 

当在现有列上放置主键或者唯一约束时,应用以下规则

 当您在一列或一组列上放置主键或唯一约束时,数据库服务器在受约束的列或一组列上创 建内部 B-tree 索引,并且自动计算列统计信息,相当于 UPDATE STATISTICS 语句在 HIGH 模式下创建分布。除非在该列或该组列上定义了用户创建的索引。 

 如果在一列或一组列上放置主键或唯一约束,而且该列或该组列上已存在唯一索引,则约 束共享该索引。然而如果现有索引允许复制,则数据库服务器返回错误。那么您必须在添 加约束之前删除现有索引。 

 如果在一列或一组列上放置主键或唯一约束,并且该列或该组列上已存在引用约束,则重 复索引升级为 UNIQUE (如果可能的话),并且该索引被共享。 

不能在 BYTE  TEXT 列上放置唯一约束,也不能在这些数据类型的列上放置引用约束。 BYTE  TEXT 列上的检查约束可只能用于检查 IS NULL IS NOT NULL  LENGTH

如果在同一列上指定 NOT NULL 约束和 NULL 约束,则该语句失败。不能在数据类型是 LIST MULTISET SET  IDSSECURITYLABEL 的列上定义 NULL 约束。

 IDSSECURITYLABEL 列具有隐式 NOT NULL 约束,但是它不能具有显式单列约束也不能是多列 引用约束或检查约束的一部分。如果约束在存储加密数据的列上,那么 GBase 8s 不能强制执行此 约束。 

重要: 不能使用单列约束格式在 ENABLED NOVALIDATE  FILTERING WITH ERROR NOVALIDATE  FILTERING WITHOUT ERROR NOVALIDATE 约束模式中添加外键约束的新 列。对于 ALTER TABLE 语句在 ALTER TABLE 操作期间使用 NOVALIDATE 关键字绕过违规 检查来创建新的外键约束,必须使用具有多列约束格式的 ALTER TABLE ADD CONSTRAINT 法。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论