- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
An Introduction to Database System 计算机科学与技术系 郑海旭 第六章 关系数据理论 6.1 问题的提出 6.2 规范化 6.4 模式的分解方法简介 6.5 小结 本章解决的问题 针对具体问题,如何构造一个适合于 它的数据模式 (使用的工具─关系数据库的规范化理论) 复习前一节的内容 [例1]试建立一个描述学校教务管理的数据库。 信息有: 学生的学号(sno)、姓名(sn)、性别(sex) 年龄(age)、住址(sloc)...... 学校所属系编号(dno)、系名(dn)、系主任(mn)、 系联系电话(phone)、所在地 …… 课程号(cno)、课程名(cn)、学分(credit)、 成绩(grade)…… 关系模式S_C_D中存在的问题 教务关系模式S_C_D(一个关系模式): (sno, sn,age,dn, mn, cno,cn, grade, …) 存在的问题: 1.删除异常(Deletion Anomalies) 2.插入异常(Insertion Anomalies) 3.数据冗余太大, 更新异常(Update Anomalies) 分解关系模式 把这个单一模式分成5个关系模式: S(sno, sn, age, sloc, ……) /*学生信息*/ C(cno, cn, credit, ……) /*课程信息*/ DEPT(dno, dn,mn, ……) /*系的信息*/ S_D(sno, dno) /*学生与系的联系*/ SC(sno,cno,grade) /*学生与课程的联系*/ 分解的本质:概念的单一化 本章要回答的问题: “好” 模式的标准? 不会发生插入异常、删除异常、更新异常, 数据冗余应尽可能少,即每个关系只有一个 主题。 满足3NF标准的关系模式是好模式 2. 分解的本质是什么? 概念的单一化过程 3. 一个关系模式如何分解成几个“好”的模式? (不丢失信息和语义的前提下) 关系模式分解方法举例 关系模式(学生-所在系-住宿-课程-成绩) S-D-L-C(Sno, Sdept, Sloc, Cno, Grade) 5.2.6 规范化 关系数据库的规范化理论是数据库逻辑设计的工具。 一个关系只要其分量都是不可分的数据项,它就是规范化的关系,但这只是最基本的规范化。 规范化程度可以有多个不同的级别 规范化(续) 规范化程度过低的关系不一定能够很好地描述现实世界,可能会存在插入异常、删除异常、修改复杂、数据冗余等问题 一个低一级范式的关系模式,通过模式分解可以转换为若干个高一级范式的关系模式集合,这种过程就叫关系模式的规范化 规范化步骤 规范化的基本思想 消除不合适的数据依赖 的各关系模式达到某种程度的“分离” 采用“一事一地”的模式设计原则 让一个关系描述一个概念、一个实体或者实体间的一种联系。若多于一个概念就把它“分离”出去 所谓规范化实质上是概念的单一化 规范化(续) 不能说规范化程度越高的关系模式就越好 在设计数据库模式结构时,必须对现实世界的实际情况和用户应用需求作进一步分析,确定一个合适的、能够反映现实世界的模式 上面的规范化步骤可以在其中任何一步终止 对函数依赖(FD)的讨论 1、以下3个模式都是3NF 6.3 模式的分解 规范化:把低一级的关系模式分解为若干个高一级的关系模式的过程。 只有能够保证分解后的关系模式与原关系模式等价,分解方法才有意义。 关系模式分解的标准 给定R(U,F), 将其分解成 R1(U1,F1), R2(U2,F2), ….Rn(Un,Fn) 三种模式分解等价的定义: ⒈ 分解具有无损连接性 U=U1∞U2 ∞…Un ⒉ 分解要保持函数依赖 F与 ∪Fi等价 ⒊ 分解既要保持函数依赖,又要具有无损连 接性 模式的分解(续) 例:S-D-L(Sno, Sdept, Sloc) F={ Sno→Sdept,Sdept→Sloc,Sno→Sloc} 分解方法可以有多种: 1. S-D-L分解为三个关系模式 R1(Sno) R2(Sdept) R3(Sloc) 2. SL分解为下面二个关系模式 R1(Sno, Sloc) R2(Sdept, Sloc) 结论:1和2属于有损分解 模式的分解(续) 例:S-D-L(Sno, Sdept, Sloc) F={ Sno→Sdept,Sdept→Sloc,Sno→Sloc} 分解方法可以有多种: 3. S-D-L分解为下面二个关系模式 S-L(Sno, Sl
文档评论(0)