2.提供完整性检查的方法 ●DBMS中检查数据是否满足完整性约束条件的机制 称为完整性检查。 ●一般在Ⅰ NSERT、 UPDATE、 DELETE语句执行后开 始检査,也可以在事务提交时检查
数据库完整性(续) 2. 提供完整性检查的方法 DBMS中检查数据是否满足完整性约束条件的机制 称为完整性检查。 一般在INSERT、UPDATE、DELETE语句执行后开 始检查,也可以在事务提交时检查
3.违约处理 ●数据库管理系统若发现用户的操作违背了完整性约束 条件,就采取一定的动作 拒绝( NO ACTION)执行该操作 级连( CASCADE)执行其他操作
数据库完整性(续) 3. 违约处理 数据库管理系统若发现用户的操作违背了完整性约束 条件,就采取一定的动作 拒绝(NO ACTION)执行该操作 级连(CASCADE)执行其他操作 … …
实体完整性检查和违约处理 插入元组或修改主码列操作时,DBMS自动检查和处理: 主码值是否唯一,如果不唯一则拒绝操作 主码各属性是否为空,只要有一个为空就拒绝操作
实体完整性检查和违约处理 插入元组或修改主码列操作时,DBMS自动检查和处理: 主码值是否唯一,如果不唯一则拒绝操作 主码各属性是否为空,只要有一个为空就拒绝操作
可能破坏参照完整性的情况及违约处理 被参照表(例如 Student)参照表(例如SC)违约处理 可能破坏参照完整性 插入元组拒绝 可能破坏参照完整性 修改外码值 拒绝 删除元组 可能破坏参照完整性拒绝级连删除设置为 空值 修改主码值 可能破坏参照完整性拒绝级连修改/设置为 空值
• 可能破坏参照完整性的情况及违约处理 被参照表(例如Student) 参照表(例如SC) 违约处理 可能破坏参照完整性 插入元组 拒绝 可能破坏参照完整性 修改外码值 拒绝 删除元组 可能破坏参照完整性 拒绝/级连删除/设置为 空值 修改主码值 可能破坏参照完整性 拒绝/级连修改/设置为 空值
用户定义完整性的检查和违约处理 ■插入元组或修改属性的值时,DBMS检查属性上的 约束条件是否被满足 ■如果不满足则操作被拒绝执行
用户定义完整性的检查和违约处理 插入元组或修改属性的值时,DBMS检查属性上的 约束条件是否被满足 如果不满足则操作被拒绝执行