版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第4章关系数据库理论编辑ppt4.1规范化问题的提出4.2函数依赖4.3关系模式的分解*4.4关系模式的范式4.5关系模式的规范化2编辑ppt4.1规范化问题的提出4.1.1规范化理论的主要内容关系数据库的规范化理论 函数依赖 范式(NormalForm) 模式设计核心,是模式分解和设计的基础模式分解的标准衡量关系模式分解以后模式的好坏设计一个合适的关系数据库系统,关键是关系数据库模式的设计。其包含多少关系模式、每个关系模式包括的属性、以及关系模式间的联系,将决定数据库系统的运行效率。而这些工作需要在关系数据库的规范化理论的指导下逐步完成。3编辑ppt4.1.2不合理的关系模式存在的存储异常问题
教学管理数据库
SCD(SNo,SN,Age,Dept,MN,CNo,Score)在此关系模式中填入一部分具体的数据SNoSNAgeDeptMNCNoScoreS1赵亦17计算机刘伟C190S1赵亦17计算机刘伟C285S2钱尔18信息王平C557S2钱尔18信息王平C680S2钱尔18信息王平C7…4编辑pptSNoSNAgeDeptMNCNoScoreS1赵亦17计算机刘伟C190S1赵亦17计算机刘伟C285S2钱尔18信息王平C557S2钱尔18信息王平C680S2钱尔18信息王平C7S2钱尔18信息王平C470S3孙珊20信息王平C175S3孙珊20信息王平C270S3孙珊20信息王平C485S4李思21自动化刘伟C193该表出现的问题数据冗余插入异常删除异常更新异常
根本原因:属性间存在着数据依赖关系
包罗万象
5编辑ppt一个好的关系模式应该具备以下四个条件:(1)尽可能少的数据冗余;(2)没有插入异常;(3)没有删除异常;(4)没有更新异常。SCD(SNo,SN,Age,Dept,MN,CNo,Score)S(SNo,SN,Age,Dept)SC(SNo,CNo,Score)D(Dept,MN)关系模式分解:原来的关系模式SCD称为泛模式,用一个大表存放所有数据,易于查询。但各种数据混在一起,数据间相互关联,导致维护困难。我们可以通过关系模式分解,得到更好的关系模式。按照一定的规范设计关系模式,将结构复杂的关系分解成结构简单的关系,从而把不好的关系数据库模式转变为好的关系数据库模式,这就是关系的规范化。6编辑ppt4.2函数依赖4.2.1函数依赖的定义对于关系模式SCD SNo决定函数(SN,Age,Dept)(SN,Age,Dept)函数依赖于SNoSCD(SNo,SN,Age,Dept,MN,CNo,Score)SNo一个学生SN,Age,Dept惟一确定惟一确定关系模式中各属性之间相互依赖、相互制约的联系称为数据依赖。一般分为函数依赖、多值依赖和连接依赖,其中函数依赖是最重要的数据依赖。
函数依赖(FunctionalDependency,FD)是关系模式中属性之间的一种逻辑依赖关系。在关系模式分解中,函数依赖起着重要的作用。7编辑ppt函数依赖的定义定义4.1
设关系模式R(U,F),U是属性全集,F是U上的函数依赖集,X和Y是U的子集,如果对于R(U)的任意一个可能关系r,对于X的每一个具体值,Y都有一个唯一的具体值与之对应,则称X决定函数Y,或Y函数依赖于X,记作XY。我们称X为决定因素、Y为依赖因素。当Y不函数依赖于X时,记作:XY。当XY且YX时,则记作:XY。UXY8编辑ppt函数依赖完全函数依赖部分函数依赖传递函数依赖9编辑ppt4.2.4完全函数依赖与部分函数依赖设有关系模式R(U),U是属性全集,X和Y是U的子集: 如果X→Y,并且对于X的任何一个真子集X′,都有X′Y,则称Y对X完全函数依赖,记作X→Y。 如果X→Y,并且对于X的某个真子集X′,有X’→Y,则称Y对X部分函数依赖,记作X→Y。 在关系模式SCD中,因为SNoScore,且CNoScore,所以有:(SNo,CNo)→Score。而SNo→Age,所以(SNo,CNo)→Agefpfp只有当决定因素是组合属性时,讨论部分函数依赖才有意义,当决定因素是单属性时,只能是完全函数依赖。10编辑ppt4.2.5传递函数依赖设有关系模式R(U),U是属性全集,X,Y,Z是U的子集若X→Y,但YX,而Y→Z(YX,ZY),则称Z对X传递函数依赖,记作:X→Z
。 如果Y→X,则XY,这时称Z对X直接函数依赖,而不是传递函数依赖。例如:在关系模式SCD中,SNoDep,但DeptSno,而DeptMN,则有Sno→MN。tt11编辑ppt此处略过关系模式分解的详细过程如有兴趣可参见教材各具体的算法。12编辑ppt4.4关系模式的范式
各种范式之间的关系关系模式分解以后模式的好坏,用什么标准衡量?这个标准就是模式的范式(NormalForms,NF)
关系模式规范化的基本思想就是消除数据冗余,消除数据依赖导致的插入、删除等异常。我们把关系模式规范化的过程中为不同程度的规范化要求设立的不同标准称为范式。由于规范化程度不同,就产生了不同的范式。13编辑ppt4.4.1第一范式定义4.14如果关系模式R所有的属性均为简单属性,即每个属性都是不可再分的,则称R属于第一范式,简称1NF,记作R∈1NF。1NF是关系模式应具备的最起码的条件。第一范式可能具有大量的数据冗余,具有插入异常、删除异常和更新异常等弊端。如关系模式SCD属于1NF,它既存在完全函数依赖,又存在部分函数依赖和传递函数依赖。克服这些弊端的方法是用投影运算将关系分解,去掉过于复杂的函数依赖关系,向更高一级的范式进行转换。14编辑ppt4.4.2第二范式第二范式的定义 如果关系模式R∈1NF,且每个非主属性都完全函数依赖于R的主关系键,则称R属于第二范式,简称2NF,记作R∈2NF。如:关系模式TCS(T,C,S)关系键(T,C,S);主属性T、C、S不存在非主属性对主关系键的部分函数依赖,因此属于2NF。从1NF关系中消除非主属性对主关系键的部分函数依赖,则可得到2NF如果R的关系键为单属性,或R的全体属性均为主属性,则R∈2NF15编辑ppt2NF规范化2NF规范化是指把1NF关系模式通过投影分解,转换成2NF关系模式的集合。
[例4-15]将SCD(SNo,SN,Age,Dept,MN,CNo,Score)规范为2NF。学生SD(SNo,SN,Age,Dept,MN)学生与课程联系SC(SNo,CNo,Score)SCD非主属性对主键完全函数依赖。因此,SD∈2NF,SC∈2NF。16编辑ppt2NF的缺点数据冗余插入异常删除异常更新异常每个系名和系主任的名字存储的次数等于该系的学生人数当一个新系没有招生时,有关该系的信息无法插入某系学生全部毕业而没有招生时,删除全部学生的记录也随之删除了该系的有关信息更换系主任时,仍需改动较多的学生记录之所以存在这些问题,是由于在SD中存在着非主属性对主键的传递函数依赖。SNOSN,SNoAge,SNoDept,DeptMN,SNo→MN,即非主属性MN对主键SNo传递函数依赖。为此,对关系SD,还需进一步简化,消除这种传递函数依赖,这样就得到了3NF。t17编辑ppt4.4.3第三范式第三范式的定义 如果关系模式R∈2NF,且每个非主属性都不传递函数依赖于R的主关系键,则称R属于第三范式,简称3NF,记作R∈3NF。如:SC(SNo,CNo,Score)
函数依赖为(SNo,CNo)→Score,非主属性Score不传递函数依赖于主关系键(SNo,CNo),因此,SC∈3NF。又如:SD(SNo,SN,Age,Dept,MN)SNo→Dep和Dept→MNSNo→MN
非主属性MN与主关系键SNo间存在着传递函数依赖,所以SD3NF。主关系键
非主属性
t非主属性
主关系键
18编辑ppt此处略去3NF规范化算法过程通过语义分析可知,关系SD实际上描述了两个实体,一个为学生实体,属性有SNo,SN,Age,Dept;另一个为系别的实体,其属性有Dept和MN,分解后的两个关系如下图所示。消除了非主属性对主关系键的传递函数依赖,均属于3NF。S(SNO,SN,Age,Dept)描述学生实体;D(Dept,MN)描述系的实体。SNoSNAgeDeptS1赵亦17计算机S2钱尔18信息S3孙珊20信息S4李思21自动化DeptMN计算机刘伟信息王平自动化刘伟3NF解决了2NF中存在的四个问题:数据冗余降低了不存在删除异常不存在更新异常不存在插入异常19编辑pptSCD规范到3NF后,所存在冗余,插入、删除、更新等常现象已经全部消失了。但3NF只限制了非主属性对于键的依赖关系,而没有限制主属性对键的依赖关系。如果发生这种依赖,仍有可能导致冗余、插入删除等异常。这时,就需要对3NF进一步规范化,消除主属性对于键的依赖关系。为此,Boyce和Codd共同提出Boyce-Codd范式,简称BCNF或B范式,弥补了3NF的不足。20编辑ppt4.4.4BC范式BC范式的定义如果关系模式R∈1NF,且所有的函数依赖X→Y(YX
),决定因素X都包含了R的一个候选键,则称R属于BC范式,记作R∈BCNF。BCNF具有如下性质:如果R∈BCNF,则R也是3NF。如果R∈3NF,则R不一定是BCNF。[例4-18]设有关系模式SNC(SNo,SN,CNo,Score)无重名的情况下,有两个候选键(Sno,CNo)和(SN,CNo)。唯一的非主属性Score对键不存在部分函数依赖和传递函数依赖,所以SNC3NF。但是,SNoSN——即决定因素Sno或SN不包含候选键,从另一角度说,存在着主属性对键的部分函数依赖:(SNo,CNo)SN,(SN,CNo)SNo,所以SNC不是BCNF。21编辑ppt分解{S1(SNo,SN),S2(SNo,CNo,Score)}代替SNC。分解结果为:S1(SNo,SN)描述学生实体;S2(SNo,CNo,Score)描述学生与课程的联系。[例4-20]设有关系模式TCS(T,C,S)候选键:(S,C)和(S,T)函数依赖是:F={(S,C)→T,(S,T)→C,T→C}分解{TC(T,C),ST(S,T)}代替TCS消除了函数依赖(S,T)C,ST∈BCNF,TC∈BCNFBCNF规范化22编辑ppt以上我们完全是在函数依赖的范畴内讨论问题。属于BCNF的关系模式是否就很完美了呢?前面所介绍的规范化都是建立在函数依赖的基础上,函数依赖表示的是关系模式属性间一对一或一对多的联系,但它并不能表示属性间的多对多的关系,因而某些关系模式虽然已经规范到了BCNF,但仍然存在一些弊端。23编辑ppt4.4.5多值依赖与第四范式多值依赖的定义假设学校中一门课程可由多名教师讲授,教学中他们使用相同的一套参考书。课程C教师T参考书B数据库原理数据结构吴胜利陈晨王平张京生数据库原理与应用数据库系统SQLServer2000算法与数据结构数据结构教程
关系CTB24编辑pptCTB转化成规范化的关系如下图所示:
C与T间的联系被称为多值依赖。多个T对应一个C,同样C和B之间也存在着类似的联系。
一个确定的C值,与其所对应的一组T值与B值无关课程C教师T参考书B数据库原理数据库原理数据库原理数据库原理数据库原理数据库原理数据结构数据结构数据结构数据结构吴胜利吴胜利吴胜利陈晨陈晨陈晨王平王平张京生张京生数据库原理与应用数据库系统SQLServer2000数据库原理与应用数据库系统SQLServer2000算法与数据结构数据结构教程算法与数据结构数据结构教程数据冗余大
插入异常
删除异常
关系模型TEACHING(C,T,B)的码是(C,T,B),即All_Key。因而TEACHING∈BCNF。25编辑ppt定义4.18设有关系模式R(U),U是属性全集,X、Y、Z是属性集U的子集,且Z=U-X-Y如果对于R的任一关系,对于X的一个确定值,存在Y的一组值与之对应,且Y的这组值仅仅决定于X的值而与Z值无关,此时称Y多值依赖于X,或X多值决定Y,记作X→→Y。若X→→Y且Z=U-X-Y≠Φ,则称X→→Y是非平凡的多值依赖,否则称为平凡的多值依赖。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 湖南网络工程职业学院《运动技能学习与控制》2024-2025学年第二学期期末试卷
- 日照职业技术学院《临终关怀社会工作》2024-2025学年第二学期期末试卷
- 南通大学《固定收益证券(双语)》2024-2025学年第二学期期末试卷
- 仰恩大学《闽文化通论》2024-2025学年第二学期期末试卷
- 六盘水职业技术学院《信息光学》2024-2025学年第二学期期末试卷
- 企业接待和招待费用管理制度
- 河北科技工程职业技术大学《智能控制理论及仿真》2024-2025学年第二学期期末试卷
- 西安财经大学《会计信息系统(二)》2024-2025学年第二学期期末试卷
- 2026天津农学院第三批招聘专职辅导员岗位8人考试参考试题及答案解析
- 2026宁夏吴忠盐池中学招聘心理代课教师1人笔试备考题库及答案解析
- 无机及分析化学:第一章 气体和溶液
- 农药管理制度流程目录及文本
- 无线电基础(第五版)中职PPT完整全套教学课件
- 公司章程范本免费
- 函数的凹凸性
- 科学计算与数学建模课件
- 西周王朝的档案和档案工作
- 热处理工艺卡片
- 部编四年级语文下册 全册教案 (表格式)
- 创业引导-与企业名家面对面答案
- 《土地宝忏》2019版定稿
评论
0/150
提交评论