什么是数据库的完整性
数据的正确性和相容性
防止不合语义的数据进入数据库。
关注 是否真实地反映现实世界
例: 学生的年龄必须是整数,取值范围为14--29;
学生的性别只能是男或女;
学生的学号一定是唯一的;
学生所在的系必须是学校开设的系;
提纲
实体完整性
参照完整性
用户定义完整性
完整性约束命名子句
触发器
*
数据库系统概论之数据库完整性专业版
*
数据库的完整性与安全性区别和联系
两个不同的概念,但有一定的联系;
前者是为了防止数据库中存在不符合语义的数据,防止错误信息的输入和输出,既所谓的垃圾进垃圾出(Garbage in Garbage out)所造成的无效操作和错误结果;
后者是保护数据库防止恶意的破坏和非法存取;
安全性措施防范的对象是非法用户,完整性措施的防范对象是不合语义的数据.
完整性控制机制
*
数据库系统概论之数据库完整性专业版
*
完整性约束条件定义
完整性约束条件:数据模型的组成部分约束数据库中数据的语义
DBMS应提供定义数据库完整性约束条件,并把它们作为模式的一部分存入数据库中
*
数据库系统概论之数据库完整性专业版
*
完整性检查机制
检查用户发出的操作请求是否违背了完整性约束条件
*
数据库系统概论之数据库完整性专业版
*
违约处理
如果发现用户的操作请求使数据违背了完整性约束条件,则采取一定的动作来保证数据的完整性。
*
数据库系统概论之数据库完整性专业版
*
完整性约束条件
完整性约束条件作用的对象
列:对属性的取值类型、范围、精度等的约束条件
元组:对元组中各个属性列间的联系的约束
关系:对若干元组间、关系集合上以及关系之间的联系的约束
*
数据库系统概论之数据库完整性专业版
*
完整性约束条件(续)
静态
对静态对象的约束是反映数据库状态合理性的约束
动态
对动态对象的约束是反映数据库状态变迁的约束
*
数据库系统概论之数据库完整性专业版
*
完整性约束条件分类
六类完整性约束条件
静态列级约束
静态元组约束
静态关系约束
动态列级约束
动态元组约束
动态关系约束
*
数据库系统概论之数据库完整性专业版
*
完整性约束条件(续)
1. 静态列级约束
静态列级约束:对的取值域的说明
最常见、最简单、最容易实现的一类完整性约束
*
数据库系统概论之数据库完整性专业版
*
完整性约束条件(续)
五类静态列级约束
1) 数据类型约束:数据的类型、长度、单位、精度等
例:学生姓名的数据类型为字符型,长度为8
2) 对数据格式的约束
例:
学号:前两位表示入学年份,后四位为顺序编号
日期:。
*
数据库系统概论之数据库完整性专业版
*
数据库系统概论之数据库完整性课件 来自淘豆网m.daumloan.com转载请标明出处.