- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第八讲数据库完整性
An Introduction to Database System 数据库完整性 数据库的完整性 数据的正确性和相容性 数据的完整性和安全性是两个不同概念 数据的完整性 防止数据库中存在不符合语义的数据,也就是防止数据库中存在不正确的数据 防范对象:不合语义的、不正确的数据 数据的安全性 保护数据库防止恶意的破坏和非法的存取 防范对象:非法用户和非法操作 数据库完整性(续) 数据库系统中的数据是由DBMS统一管理和控制的,为了适应数据共享的环境,DBMS必须提供数据保护能力,以保证数据库中数据的安全可靠和正确有效。 数据保护 数据库完整性 数据库恢复技术 并发控制 数据库安全性 数据库完整性(续) 为维护数据库的完整性,DBMS必须: 1.提供定义完整性约束条件的机制 2.提供完整性检查的方法 3.违约处理 完整性约束条件 整个完整性控制都是围绕完整性约束条件进行的,从这个角度说,完整性约束条件是完整性控制机制的核心。 完整性约束条件 完整性约束条件作用的对象 对象 列 对属性的取值类型、范围、精度等的约束条件 元组 对元组中各个属性列间的联系的约束 关系 对若干元组间、关系集合上以及关系之间的联系的约束 完整性约束条件 完整性约束条件作用的对象(续) 对象的状态 静态 对静态对象的约束是反映数据库状态合理性的约束 这是最重要的一类完整性约束 动态 对动态对象的约束是反映数据库状态变迁的约束 完整性约束条件 完整性约束条件分类 六类完整性约束条件 静态列级约束 静态元组约束 静态关系约束 动态列级约束 动态元组约束 动态关系约束 完整性约束条件 完整性约束条件 1. 静态列级约束 静态列级约束是对一个列的取值域的说明,这是最常见最简单,同时也最容易实现的一类完整性约束 完整性约束条件 五类静态列级约束 1) 对数据类型的约束,包括数据的类型、长度、单位、精度等 例:规定学生姓名的数据类型应为字符型,长度为8。 2) 对数据格式的约束 例:规定学号的格式为前两位表示入学年份,后四位为顺序编号。出生日期的格式为YY.MM.DD。 完整性约束条件 3) 对取值范围或取值集合的约束 例:规定成绩的取值范围为0-100,年龄的取值范围为14-29,性别的取值集合为[男,女]。 4) 对空值的约束 空值表示未定义或未知的值,它与零值和空格不同。有的列允许空值,有的则不允许。例如规定成绩可以为空值。 5) 其他约束 例:关于列的排序说明,组合列等。 完整性约束条件 2. 静态元组约束 静态元组约束就是规定组成一个元组的各个列之间的约束关系。 例:订货关系中包含发货量、订货量等列, 发货量不得超过订货量 教师关系中包含职称、工资等列, 教授的工资不得低于700元 静态元组约束只局限在单个元组上 完整性约束条件 3. 静态关系约束 在一个关系的各个元组之间或者若干关系之间常常存在各种联系或约束 常见静态关系约束 1) 实体完整性约束 2) 参照完整性约束 3) 函数依赖约束 4) 统计约束 完整性约束条件 函数依赖约束 大部分函数依赖约束都是隐含在关系模式结构中的,特别是规范化程度较高的关系模式(例如3NF或BCNF),都由模式来保持函数依赖。 但是在实际应用中,为了不使信息过于分离,常常不过分地追求规范化。 完整性约束条件 函数依赖约束(续) 这样在关系的字段间就可以存在一些函数依赖需要显式地表示出来。 例:在学生-课程-教师关系SJT(S,J,T)中存在如下的函数依赖((S,J)→T, T→J),将(S,J)作为主码,还需要显式地表示T→J这个函数依赖。 完整性约束条件 统计约束 定义某个字段值与一个关系多个元组的统计值之间的约束关系 例:规定部门经理的工资不得高于本部门职工平均工资的5倍,不得低于本部门职工平均工资的2倍。本部门职工的平均工资值是一个统计计算值。 完整性约束条件 4. 动态列级约束 动态列级约束是修改列定义或列值时应满足的约束条件 完整性约束条件 常见动态列级约束 1) 修改列定义时的约束 例:规定将原来允许空值的列改为不允许空值时,如果该列目前已存在空值,则拒绝这种修改。 2) 修改列值时的约束 修改列值有时需要参照其旧值,并且新旧值之间需要满足某种约束条件。 例:职工工资调整不得低于其原来工资,学生年龄只能增长 完整性约束条件 5. 动态元组约束 动态元组约束是指修改某个元组的值时需要参照其旧值,并且新旧值之间需要满足某种约束条件。 例: 职工工资调整不得低于其原来工资+工龄*1.5 完整性约束条件 6. 动态关系约束 动态关系约束是加在
您可能关注的文档
最近下载
- CECS193-2005 城镇供水长距离输水管(渠)道工程技术规程.pdf VIP
- 《Python数学建模算法与应用课件》04第4章 线性规划和整数规划模型.pptx
- 立体仓库结构设计(底盘单元).docx VIP
- ASME中国制造-ISO12944-7-2017 中文译稿 第7部分 涂装工作的实施和监管.pdf VIP
- 2025年生物制药企业生产过程节能减排与成本控制方案.docx
- 民国时期广东的蔗糖生产与蔗糖业纠纷研究.pdf
- 末梢血标本采集专家共识试题及答案.doc VIP
- 年回收拆解30000辆报废汽车新建项目环境影响报告.docx VIP
- JTT1495-2024公路水运危险性较大工程安全专项施工方案审查规程.pdf VIP
- 《人类起源的演化过程》名著导读PPT教学课件.pptx VIP
文档评论(0)