参照完整性
属性上的违约条件检查和违约处理
插入元组或修改属性的值时,
RDBMS
检查属性上的约束条件是否被满足
如果不满足则操作被拒绝执行
元组上的约束条件 的定义
在
CREATE TABLE
时可以用
CHECK
短语定义元组上的约束条件,即
元组级的限制
同属性值限制相比,元组级的限制可以设置不同属性之间的取值的相互约束条件
例如
当学生的性别是男时,其名字不能以Ms.打头。
CREATE TABLE Student
(Sno CHAR(9),
Sname CHAR(8) NOT NULL,
Ssex CHAR(2),
Sage SMALLINT,
Sdept CHAR(20),
PRIMARY KEY (Sno),
CHECK (Ssex='女' OR Sname NOT LIKE 'Ms.%')
/*定义了元组中Sname和 Ssex两个属性值之间的约束条件*/
);
性别是女性的元组都能通过该项检查,因为
Ssex
=‘
女’成立;
当性别是男性时,要通过检查则名字一定不能以
Ms.
打头
元组上的约束条件和违约处理
插入元组或修改属性的值时,
RDBMS
检查元组上的约束条件是否被满足
如果不满足则操作被拒绝执行