完整性规则的形式化表示(D,O,A,C,P)一D(data):数据对象-O(opration):触发完整性检查的数据库操作一A(assertion):数据对象必须满足的语义约束/断言规则的主体一C(condition):选择数据对象的条件,可包含在D内-P(procedure):违反完整性规则所触发的操作过程例:教授工资不低于1000元D:约束作用对象是属性“工资”O:当用户插入或修改“工资”属性时触发完整性检查A:“工资”不能小于1000C:仅作用于“职称”属性值为教授的记录P:拒绝执行用户请求
⚫ 完整性规则的形式化表示(D,O,A,C,P) – D(data):数据对象 – O(opration):触发完整性检查的数据库操作 – A(assertion):数据对象必须满足的语义约束/断言, 规则的主体 – C(condition):选择数据对象的条件,可包含在D内 – P(procedure):违反完整性规则所触发的操作过程 例:教授工资不低于1000元 D:约束作用对象是属性“工资” O:当用户插入或修改“工资”属性时触发完整性检 查 A:“工资”不能小于1000 C:仅作用于“职称”属性值为教授的记录 P:拒绝执行用户请求
参照完整性应考虑的问题-外键是否可以接受空值,如S.SD可以,SC.S#不可以一删除被参照关系的元组时的考虑?级联册删除(Cascade):册删除参照关系中相应外键值的元组●受限删除(Restricted):只有参照关系中没有相应外键值的元组时才允许册删除置空值删除(nullified):将参照关系中相应外键置空一修改被参照关系的元组时的考虑●级联修改(Cascade):修改参照关系中相应元组的外键值受限修改(Restricted):只有参照关系中没有相应外键值的元组时才允许修改置空值修改(nullified):将参照关系中相应外键置空
⚫ 参照完整性应考虑的问题 –外键是否可以接受空值,如S.SD可以,SC.S#不可以 –删除被参照关系的元组时的考虑 ⚫级联删除(Cascade):删除参照关系中相应外键值的元组 ⚫受限删除(Restricted):只有参照关系中没有相应外键值的元 组时才允许删除 ⚫置空值删除(nullified):将参照关系中相应外键置空 –修改被参照关系的元组时的考虑 ⚫级联修改(Cascade):修改参照关系中相应元组的外键值 ⚫受限修改(Restricted):只有参照关系中没有相应外键值的元组 时才允许修改 ⚫置空值修改(nullified):将参照关系中相应外键置空