列约束:限制输入数据中的某些字段(列),保证数据值或格式符合条件
格式:[ constraint 约束名称 ] check( 约束条件 )
列级约束:与一列关联,限制该字段输入值
表级约束:与几列关联,限制一些字段输入值
对输入数据中的指定列进行检查,根据逻辑表达式返回值确定是否接受更改
返回值是布尔值(FALSE TRUE NULL/UNKNOWN),一旦出现FALSE,则对插入与更新设限,否则允许更改
约束条件规则与where子句类似,如:
sql语句创建列级约束,两种写法:
sql语句创建表级约束:
sql语句新增约束:
可视化视图新增约束:
右击约束,填写约束条件
限制:
1 空值引起约束覆盖。空值的计算结果为UNKNOWN,检查约束仅对逻辑表达式返回值为FALSE的加以限制,因此空值可以冲破约束。
2 空表中检查约束均有效。仅在有对象可检查的情况下检查约束生效,空表中无可检查对象,因此检查约束默认条件满足。
3 DELETE时不检查约束。