检查约束

检查约束指定执行 INSERT 或 UPDATE 语句期间,在可以将数据指定给列之前,数据值要满足的条件或要求。在插入或更新期间,如果某行对表上定义的任何检查约束求值为 false,那么数据库服务器返回错误。然而,当检查约束求值为 NULL 时,数据库服务器不报告错误或拒绝记录。因此,创建表时,您可能想同时使用检查约束和 NOT NULL 约束。

要定义约束,请使用 CREATE TABLE 或 ALTER TABLE 语句。例如:以下要求将整数域的值约束为位于特定范围之内:
Customer_Number >= 50000 AND Customer_Number <= 99999
要表达对基于字符的域的约束,请使用 MATCHES 谓词和它支持的正则表达式语法。例如:以下约束将电话域限制为美国本地电话号码格式:
vce_num MATCHES '[2-9][2-9][0-9]-[0-9][0-9][0-9][0-9]'

有关检查约束的其他信息,请参阅 GBase 8s SQL 指南:语法 中的 CREATE TABLE 和 ALTER TABLE 语句。