GBASE南大通用GBase数据库使用单列约束格式的限制

本文介绍了GBase数据库中单列约束的局限性,如不能用于组合关键字,RAW表的约束限制,以及对BLOB等列的约束规定。此外,详细讲解了NOTNULL约束的使用、主键约束自动产生的NOTNULL约束,以及集合数据类型的特殊要求。
摘要由CSDN通过智能技术生成

GBase数据库使用单列约束格式的限制 

单列约束格式无法指定包含多列的约束。因此,不能使用单列约束格式来定义组合关键字。有关多 列约束的信息,请参阅多列约束格式。 

不能在 RAW 表的任一列上定义引用约束或唯一约束。RAW 表只支持 NOT NULL 或 NULL 约 束。 

不能在 BLOB 、BYTE 、CLOB 或 TEXTY 列上放置唯一、主键、或引用约束。但是可以使用检 查约束来检查 BYTE 或 TEXT 列上的 NULL 或 non-NULL 值。

如果约束在存储加密数据的列上,则 GBase 8s 不执行此约束。 

使用 NOT NULL 约束 

使用 NOT NULL 关键字来要求列必须在插入或更新操作期间接收值。如果在列删放置了 NOT NULL 约束(并且没有指定缺省值),则当您插入一行或者某行中更新列是,必须在该列中输入一 个值。如果没有输入值,则由于不存在缺省值,所以数据库服务器将返回一个错误。

以下示例创建了 newitems 表。在 newitems 中,列 manucode 没有缺省值也不允许有 NULL 值。

CREATE TABLE newitems (

newitem_num INTEGER,

manucode CHAR(3) NOT NULL,

promotype INTEGER, 

descrip CHAR(20)); 

当您定义 PRIMARY KEY 约束时,数据库服务器还静默地在同一列或在构成主键的列集上创建了 NOT NULL 约束。 

如果还指定了 NOT NULL 约束,则不能指定 NULL 作为列的显式缺省值。 如果在同一列上指定 NOT NULL 约束和 NULL 约束,则 CREATE TABLE 语句发生错误并失 败。 

集合数据类型 LIST 、MULTISET 和 SET 的列要求 NOT NULL 约束。在结合数据类型上不允许 其它的列约束。

  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值