- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据库系统原理与设计(万常选版)CH5 关系数据理论及求精--复习.ppt
数据冗余关系举例 [例5.1] 考虑学生选课关系模式SCE(studentNo, studentName, courseNo, courseName, score),属性集{studentNo, courseNo}是唯一候选码,也是主码。 如果允许一个学生选修多门课程,且一门课程可被多个学生选修,则该关系实例可能出现: 冗余存储:学生姓名和课程名被重复存储多次; 更新异常:当修改某学生的姓名或某课程的课程名时,可能只修改了部分副本的信息,而其他副本未被修改到; 插入异常:如果某学生没有选修课程,或某门课程未被任何学生选修时,则该学生或该课程信息不能存入数据库,因为主码值不能为空; 删除异常:当一学生的所有选修课程信息都被删除时,则该学生的信息将被丢失。对课程也是如此。 模式分解问题举例 模式分解存在的问题 有损分解:两个分解后的关系通过连接运算还原得到的信息与原来关系的信息不一致。 如果能够通过连接分解后所得到的较小关系完全还原被分解关系的所有实例,称之为无损分解(lossless decomposition),也称该分解具有无损连接特性。 依赖关系丢失 sex、birthday、age、native、classNo等与属性studentNo依赖关系也就不再存在。 如果被分解关系模式上的所有依赖关系都在分解得到的关系模式上保留,称该分解为依赖保持 (dependency preserving)分解。 小结 一个“好”的关系模式应该是: 数据冗余应尽可能少 不发生插入异常、删除异常、更新异常等问题。 模式分解时,分解后的模式应具有无损连接、保持依赖等特性。 函数依赖定义 函数依赖(functional dependency, 简称FD)是一种完整性约束,是现实世界事物属性之间的一种制约关系,它广泛地存在于现实世界之中。 定义5.1 设r(R)为关系模式,??R,??R。对任意合法关系r及其中任两个元组ti和tj,i?j,若ti[?]=tj[?],则ti[?]=tj[?],则称?函数确定? 或 ? 函数依赖于?,记作???。 平凡与非平凡函数依赖 定义5.2 在关系模式r(R)中,??R,??R。若???,但???,则称???是非平凡函数依赖。否则,若???, 则称???是平凡函数依赖。 对于任一关系模式,平凡函数依赖都是必然成立的,它不反映新的语义。 完全函数依赖和部分函数依赖 定义5.3 在关系模式r(R)中,??R,??R,且???。若对任意的???,???都不成立,则称???是完全函数依赖,简称完全依赖。否则,若存在非空的???,且???成立, 则称???是部分函数依赖,简称部分依赖。 完全函数依赖和部分函数依赖举例 当?是单属性时,则???完全函数依赖总是成立的。 例如,在关系SCE中 完全依赖: studentNo ? studentName courseNo ? courseName {studentNo, courseNo} ? score 部分依赖: {studentNo, courseNo} ? studentName {studentNo, courseNo} ? courseName 传递函数依赖 定义5.4 在关系模式r(R)中,??R,??R,???,??R。若???,???,???,则必存在函数依赖???,并称???是传递函数依赖,简称传递依赖。 与部分依赖一样,传递依赖也可能会导致数据冗余及产生各种异常。 函数依赖小结 函数依赖是指关系模式中属性之间存在的一种约束关系。这种约束关系既可以是现实世界事物或联系的属性之间客观存在的约束,也可以是数据库设计者根据应用需求或设计需要强加给数据的一种约束。 但不论是那种约束,一旦确定,进入数据库中的所有数据都必须严格遵守。 正确了解数据的意义及确定属性之间的函数依赖关系,对设计一个好的关系模式是十分重要的。 函数依赖集闭包 对于给定关系模式r(R)及其函数依赖集F,有时只考虑给定的函数依赖集是不够的,而需要考虑在r(R)上总是成立的所有函数依赖。 [例5.5] 给定关系模式r(R)=r(A, B, C)及函数依赖集F={A?B, B?C},证明A?C成立。 证明:假设对于关系实例r中的任意元组ti, tj, i?j, 满足ti[A]=tj[A]。由于存在A?B,则可推出ti[B]=tj[B]。又由于B?C,则又可推出ti[C]=tj[C]。 因此,ti[A]=tj[A] ? ti[C]=tj[C]。按定义5.1有A?C。证毕。 函数依赖集闭包 定义5.5 若给定函数依赖集F,可以证明其他函数依赖也成立,则称这些函数依赖被F逻辑蕴涵。 定义5.6 令F为一函数依赖集,F逻辑蕴涵的所有函数依赖组成的集合称为F的
您可能关注的文档
最近下载
- 《SPSS实战与统计思维》读书笔记.pptx VIP
- 2025年新疆投资发展(集团)有限责任公司及所属公司公开招聘(42人)笔试备考试题及答案解析.docx VIP
- 《应急救援技能培训》课件.ppt VIP
- 临床技术操作规范-妇产科(11版).doc
- ISO 14001 2015 中英文.doc VIP
- 2025辽宁省交通建设投资集团有限责任公司招聘16人笔试历年参考题库附带答案详解.docx
- 2025年水平定向钻市场调查报告.docx
- 美国发展历程.ppt VIP
- 【农业农村部】中国农业展望报告(2025—2034).docx
- DB34_T4098.2-2022_建筑固废再生作道路材料应用技术规程第2部分:路基工程_安徽省.docx VIP
文档评论(0)