数据结构关系数据理论(原理).pptVIP

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
5.1 问题的提出 例:有一个教学数据库:有学生、课程、系等信息 R(S#,SD,MN,C#,G) 学 系 系 课 成 号 别 主 号 绩 任 事实: 1 一个系有若干学生,但一个学生只属于一个系; 2 一个系只有一名负责人; 3 一个学生可以学习多门课,一门课可以被许多学生选修 4 每个学生学习每一门课要有一个成绩。 存在三个不足: (1)??? 插入异常 例如,一个系刚建立,无学生,或者有学生未选课,则无法将这个系及学生的信息存入数据库; (2)??? 删除异常 某个系的学生全毕业了,在删除学生信息的同时,系及负责人的信息也删除了; (3)??? 数据冗余太大 系负责人的信息要与该系的每名学生的每门课程相对应 两个问题:浪费存储,维护数据库完整性的代价太大; 综上所述:R不是一个好的数据库模式,好的数据库模式不应当发生插入异常、删除异常、冗余尽可能小。 4.2 规范化 设计好的关系模式要应用规范化理论 规范化理论—描述一个关系模式所具有的属性间的依赖情况,根据其依赖情况区分关系的规范化程度。 1 函数依赖(P172定义) 定义:设关系模式R(U)是属性集U上的关系模式。 x 、y为U的子集。若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等,则称 x 函数确定y,或y 函数依赖于x记作X-Y。 5 函数依赖集合 一个关系模式中,所有函数依赖构成的集合。记为F 例如:F={S# → SD SD →MN S# →MN (S#,C#) →G} 6 最小函数依赖集(最小覆盖) 若有一个函数依赖集F ,F 如果满足下列条件,则称F 为最小函数依 赖集。 (1)F 中每一个函数依赖的右部仅包含一个属性; (2)F 中不存在这样的函数依赖X→A,使得F 与F-{X→A}等价。 (不含有多余的依赖) (3)F 中不存在这样的函数依赖X→A ,X有真子集Z,使得 F-{X→A} ∪{Z→A}与F 等价。 (左部不允许有多余的属性) 范式 范式是符合某一级别的关系模式的集合。 在关系数据库中的关系必须满足一定的要求,满足不同程度的要求为不同的范式。 目前主要有六种范式,分别称为: 第一范式(1NF—Normal Form) 第二范式(2NF) 第三范式(3NF) BC范式(BCNF) 第四范式(5NF) 第五范式(5NF) 六种范式之间的关系:P174-175 BCNF(所有决定因素都包含码) 若R(U)中的每个函数依赖X→Y,且Y不属于X,则X必含有候选码。那么R(U)属于BCNF。 R1、R21、R22∈BCNF 小结:P182 模式分解的三个定义 (1)分解要具有无损连接性 即分解后再通过自然连接恢复到原来的表 (2)分解要保持函数依赖 即原来的函数依赖关系不能改变 (3)分解即具有无损连接性有要保持函数依赖 模式分解算法 算法1:转换为3NF的保持函数依赖的分解。 事实:按规范化理论提供的这一算法,若要求模式分解保持函数依赖,那么模式分解一定能够达到3NF,但不一定能够达到BCNF。 例:R(S#,SD,MN,C#,G)属于1NF ① 构造最小化函数依赖集 F={S# → SD SD →MN (S#,C#) →G} 不存在 不存在 F1={S# → SD } U1={S# , SD } F2={SD →MN } U2={ SD ,MN } F3={(S#,C#) →G} U3={S#,C# ,G} R1(U1,F1) R2(U2,F2) R3(U3,F3) P={R1(U1,F1),R2(U2,F2), R3(U3,F3)} 对R做保持函数依赖的模式分解,达到3NF * * 第五章 关系数据理论

文档评论(0)

kfcel5889 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档