- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据库系统 第十章 数据库完整性 *数据库系统 第八章 数据库保护 1、掌握完整性约束条件 2、掌握完整性控制机制 2、掌握SQL中的完整性方法, §1 完整性约束条件 §2 完整性控制 §3 SQL的完整性实现 本章要求: 本章内容: 请选择内容 返回 完整性检查:DBMS提供一定的机制来检查数据库中的数 据,看其是否满足语义规定的条件。 数据库的完整性: 指数据的正确性和相容性。 作用:防止数据库中存在不符合语义的数据,防止错误信息的输入和输出。主要防范对象是不符合语义的数据。 数据库的安全性:保护数据库,防止非法存取和恶意破坏 主要防范对象是非法用户和非法操作。 作用不同,目标一致 §1 完整性约束条件 完整性约束条件 完整性约束条件是对数据语义上的要求 模式定义时对数据类型等的说明是对数据语法上的要求 1、完整性约束条件作用的对象 关系 若干元组间、关系之间的联系的约束 元组 元组中各个字段间的联系的约束 列 类型、取值范围、精度、排序等约束条件 2、静态约束和动态约束 静态约束:确定状态时,数据对象所应满足的约束条件,是反映数据库状态合理性的约束。 动态约束:数据库从一种状态转变为另一种状态时,新、旧值之间所应满足的约束条件,是反映数据库状态变迁的约束。 3、完整性约束条件分类(P304) (1)静态列级约束 对一个列的取值域的说明。 ① 对数据类型的约束 规定每一列数据的类型、长度、精度等。 ② 对数据格式的约束 规定日期数据的格式或组合数据各部分的次序及 含义等。 ③ 对取值范围或取值集合的约束 如:学生成绩的取值范围为0—100,性别为男女 ④ 对空值的约束 列是否可以取空值。 ⑤ 其他约束 (2)静态元组约束 规定元组中各个列之间的约束关系。如:对一个包含职称和工资的元组,规定教授的工资不能低于2000元。 (3)静态关系约束 一个关系的各个元组之间或若干关系之间的约束。 ① 实体完整性约束:元组的码必须唯一。 ② 参照完整性约束:外键只能取被参照关系的码值 或空值。 ③ 统计约束:某个字段值与多个元组的统计值之间 的关系。 (4)动态列级约束 修改列定义或列值时应满足的约束条件。 ① 修改列定义时的约束 如:一个已存在空值的列,不能修改为不许空的列。 ② 修改列值时的约束 规定新旧值之间的关系。如新值不能小于旧值。 (5)动态元组约束 元组中某个列被修改时,与其他列之间必须满足的约束条件。如学员的职务改为班长时,班长津贴要与之相符 (6)动态关系约束 关系新旧状态之间的约束。如银行划款,划出帐户要增加一条划出记录,划入帐户要增加一条划入记录,且款值要相等。 §2 完整性控制 1、DBMS的完整性控制机制 定义功能,提供定义完整性约束条件的机制 检查功能,检查用户操作是否违背了完整性约束条件 拒绝违背完整性约束条件的用户操作,保证数据完整性 完善的完整性控制机制应允许用户定义前述六类完整性约束条件 拒绝操作对立即执行约束,仅拒绝刚执行的更新语句,但对延迟执行约束,要拒绝整个事务,把数据库回滚到事务执行前的状态。 如银行转帐应遵循借贷平衡原则,这类事务应该是延迟执行约束。 2、立即执行约束和延迟执行约束 事务中更新语句 执行完后就进行 完整性检查 整个事务执行完后 才进行完整性检查 例如:在学生表S中,学生的年龄不的低于18,也不得高于25的约束中 D 约束作用的对象为年龄属性SA O 当插入或修改学生记录时 A SA=18 and SA=25 C 无(所有学生) P 拒绝执行该操作 3、完整性规则的表示 用五元组 (D,O,A,C,P) 表示 约束作 用的数 据对象 约束 规则
文档评论(0)