版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2023/5/12经济与管理学院14.1数据依赖4.2范式4.3关系模式的规范化4.4关系模式的分解算法4.5判断分解服从规范地方法第四章关系数据库设计理论目录2023/5/12经济与管理学院2第四章关系数据库设计理论
4.1数据依赖4.1.1关系模式中的数据依赖关系是一张二维表,它是所涉及属性的笛卡尔积的一个子集。从笛卡尔积中选取哪些元组构成该关系,通常是由现实世界赋予该关系的元组词义来确定的。元组词义实质上是一个n目谓词(n是属性集中属性的个数)。使该n目谓词为真的笛卡尔积中的元素(或者说凡符合元组语义的元素)的全体就构成了该关系。2023/5/12经济与管理学院3
关系模式:关系模式是对关系的描述,为了能够清楚地刻划一个关系,它需要由五个部分组成,即应该是一个五元组:R(U,D,DOM,F)。其中R为关系名,U为组成该关系的属性名集合,D为属性组U中属性所来自的域,DOM为属性向域的映象集合,F为属性间数据的依赖关系集合。2023/5/12经济与管理学院4
关系模式R(U,D,DOM,F)简化为R(U,F)。当且仅当U上的一个关系r满足F时,r称为关系模式R(U,F)的一个关系。其中F为属性间数据的依赖关系集合(实际上就是描述关系的元组语义,限定组成关系的各个元组必须满足的完整性约束条件)。2023/5/12经济与管理学院54.1.2数据依赖对关系模式的影响数据依赖是通过一个关系中属性间值的相等与否体现出来的数据间的相互关系,是现实世界属性间相互联系的抽象,是数据内在的性质,是语义的体现。最重要的数据依赖有函数依赖(functionaldependency)和多值依赖(multivalueddependency)。2023/5/12经济与管理学院6
函数关系普遍存在于现实生活中。如,描述一个学生关系,可以有学号(Sno)、姓名(Sname)、所在系(Sdept)等几个属性。由于一个学号只对应一个学生,一个学生只在一个系。因而当“学号“值确定后,姓名及所在系的值也就唯一地确定了。属性间的这种函数依赖类似于数学中的函数,因此说Sno函数决定Sname和Sdept,记作snosname,snosdept。2023/5/12经济与管理学院7
设有数据库设计的对象包括学号(Sno)、姓名(sname)、年龄(age)、性别(sex)、系名(Sdept)、系主任姓名(Mname)、课程名(Cname)和成绩(Grade)。假设该数据库模式由一个单一的关系模式st构成,则该关系模式的属性集合为:U={Sno,sname,sex,age,Sdept,Mname,Cname,Grade}2023/5/12经济与管理学院8一个系有若干名学生,但一个学生只属于一个系;一个系只有一名主任;一个学生可以选修多门课程,每门课程有若干名学生选课;每个学生所学的每门课程都只有一个成绩。2023/5/12经济与管理学院9则得到属性组U上的一组函数依赖F(如图)F={Snosname,snosex,snoage,snosdept,sdeptmname,(sno,cname)grade}SnoSdeptCnameMnameGradesnamesexage2023/5/12经济与管理学院10SNOsnamesexagecnamegradesdeptmnameS1李华男20C190IS王民S1李华男20C290IS王民S1李华男20C385IS王民S1李华男20C487IS王民S2张平女21C190IS王民S3刘良男21C175IS王民S3刘良男21C270IS王民S3刘良男21C456IS王民S4陈兵男20C190SC赵敏
S4陈兵男20C285SC赵敏
不规范关系的实例-ST关系2023/5/12经济与管理学院11
若只考虑函数依赖这一种数据依赖,就得到一个描述学生的关系模式st(U,F)。但这个关系模式存在四个问题:(1)数据冗余太大。如每一个系主任的姓名重复出现。这将浪费大量的存储空间。(2)更新异常(updateanomalies)。由于数据冗余,当更新数据库中数据时,系统要付出很大的代价来维护数据库的完整性,否则会面临数据不一致的危险。2023/5/12经济与管理学院12(3)插入异常(insertionanomalies)。如果一个系刚成立,尚无学生,就无法把这个系及其系主任的信息存入数据库。(4)删除异常(deletionanomalies)。如果一个系的学生全毕业了,在删除该系学生信息的同时,把这个系及其系主任的信息也丢掉了。2023/5/12经济与管理学院134.1.3相关概念1.函数依赖设R(U)是属性集U上的关系模式,X、Y是U的子集。对于R(U)的任意一个可能的关系r,如果r中不存在两个元组,它们在X上的属性值相同,而在Y上的属性值不同,则称“X函数确定Y”或“Y函数依赖于X”,记作XY。2023/5/12经济与管理学院14如对于学生关系模式:
St(U,F)U={Sno,sname,sex,age,Sdept,Mname,Cname,Grade}F={Snosname,snosex,snoage,snosdept,sdeptmname,(sno,came)grade}2023/5/12经济与管理学院15对函数依赖,注意:函数依赖不是指关系模式R的某个或某些关系实例满足约束条件,而是指R的所有关系实例均要满足的约束条件。函数依赖和别的数据关系一样,是语义范畴的概念,我们只能根据数据的语义来确定函数依赖。如:“姓名函数决定年龄函数”这个函数依赖只有在没有同名的条件下成立。数据库设计者可以对现实世界作强制性规定。如上例,可强行规定不允许同名出现。2023/5/12经济与管理学院16若XY,则X称为这个函数依赖的决定属性集(determinant)。若XY,并且YX,则记为XY。若Y不函数依赖于X,则记为X↛Y。2023/5/12经济与管理学院17函数依赖与属性间的联系类型有关:当X,Y之间是“1对1”联系时,则存在函数依赖XY和YX。当X,Y之间是“多对1”联系时,则只存在函数依赖XY。当X,Y之间是“n对n”联系时,则X和Y之间不存在函数依赖。2023/5/12经济与管理学院182.平凡函数依赖和非平凡函数依赖在关系模式R(U)中,对于U的子集X和Y,如果XY,但YX,则XY是非平凡函数依赖。若YX,则XY称为平凡函数依赖。对于任何一个关系模式,平凡函数依赖都是必须成立的,它不反应新的语义,因此我们总讨论非平凡函数依赖。2023/5/12经济与管理学院193.完全函数依赖与部分函数依赖在关系模式R(U)中,如果XY,并且对于X的任何一个真子集X’,都有X’
↛Y,则称Y完全函数依赖于X,记作:XY;若XY,但Y不完全函数依赖于X,则称Y对X部分函数依赖,记作XY。fp2023/5/12经济与管理学院204.传递函数依赖在关系模式R(U)中,如果XY,YZ,且YX子集,Y↛X,则称Z传递函数依赖于X。5.用函数依赖的概念定义码设K为关系模式R(U,F)中的属性或属性组合,若KU,则K称给R的一个候选码。若关系模式R有多个候选码,则选定其中一个做为主码。f2023/5/12经济与管理学院214.2范式关系模式应满足的基本要求:(1)元组的每个分量必须是不可再分的数据项。(2)数据库中的数据冗余应尽可能少。(3)关系数据库不能因为数据更新操作而引起数据的不一致问题。(4)当执行数据插入操作时,数据库中的数据不能产生插入异常现象。(5)数据库中数据不能产生删除操作异常问题。(6)数据库设计应考察查询要求,数据组织应合理。2023/5/12经济与管理学院22
规范化理论是研究如何将一个不好的关系模式转换为好的关系模式的理论,它是围绕范式而建立的。规范化理论认为,一个关系数据库中的所有关系,都应满足一定的要求,它把关系应满足的规范要求分成几级,并为每一级定义了相应的约束条件集(范式)。如果一个关系满足某个指定的约束集,则称它属于某种特定范式。1NF2NF3NFBCNF4NF5NF2023/5/12经济与管理学院234.2.1第一范式(1NF)如果一个关系模式R的所有属性都是不可再分的数据项,则称该关系为第一范式,记作R∈1NF。如ST模式中所有属性都是不可再分的数据项,所以ST满足1NF。在任何一个关系数据库系统,第一范式是对关系模式的一个最起码的要求。不满足第一范式的数据库模式不能称为关系数据库。但满足第一范式的关系模式不一定是一个好的关系模式。2023/5/12经济与管理学院24
关系模式SLC(Sno,Sdept,Sloc,Cno,Grade)其中,Sloc为学生住处,假设每一个系的学生住在同一地方。SLC的码为(Sno,Cno)。函数依赖包括:Grade(Sno,Cno)fSdeptSnoSdept(Sno,Cno)pSlocSnoSloc(Sno,Cno)pSlocSdept(因为每个系只住一个地方)2023/5/12经济与管理学院25非主属性对码的依赖关系如下图所示:候选码GradeSnoSdeptSlocCno图中的实线表示完全函数依赖,虚线表示部分函数依赖。2023/5/12经济与管理学院26SLC关系存在以下问题:插入异常:插入一个还没选课的学生时没法插入,因为无Cno。删除异常:删除一个只选了一门课的同学的选课时。数据冗余度大:如一个学生选了20门课,则Sdept和Sloc值就重复20次。修改复杂:如转系时2023/5/12经济与管理学院274.2.2第二范式(2NF)若关系R∈1NF,且它的每一非主属性都完全依赖于主码,并且当主码是组合的属性组时,应依赖于每一个组成属性,则称R属于第二范式,记作R∈2NF。“完全依赖”和“唯一标识于”是同义的。2023/5/12经济与管理学院28
关系模式SLC出现上述问题的原因是Sdept,Sloc对码的部分函数依赖。为了消除这些部分函数依赖,可以采用投影分解法,把SLC分解为两个关系模式:
SC(Sno,Cno,Grade)SL(Sno,Sdept,Sloc)
其中SC的码为(Sno,Cno),SL的码为Sno。这两个关系模式的函数依赖如图所示。2023/5/12经济与管理学院29
分解后的关系模式中,非主属性都完全函数依赖于码了,从而使上述4个问题在一定程度上得到了一定的解决。GradeSnoCno候选码SCSnoSdeptSloc候选码SL2023/5/12经济与管理学院30
属于2NF的关系模式并不一定是一个好的关系模式。如:
SL(Sno,Sdept,Sloc)中有下列函数依赖:即Sloc传递函数依赖于Sno。SnoSdeptSnoSlocSdeptSloc2023/5/12经济与管理学院31SL关系中仍然存在插入异常、删除异常、数据冗余度大和修改复杂的问题。插入异常:如某个系刚成立,目前还没有在校学生,就无法把这个系的信息存入数据库。删除异常:如某系学生全部毕业后在删除学生信息的同时系的信息也被删除。数据冗余度大:如关于系的住处的信息重复出现多次。修改复杂:如调整学生住处时。2023/5/12经济与管理学院324.2.3第三范式(3NF)如果关系模式R<U,F>中不存在码X、属性组Y以及非主属性Z(Z⊈Y),使得XY,YZ和Y↛X
成立,则R3NF。即:若R∈3NF,则每一个非主属性既不部分函数依赖于码,也不传递函数依赖于码。
2023/5/12经济与管理学院33关系模式SL出现上述问题的原因是Sloc传递函数依赖于Sno。为消除该传递函数依赖,可以采用投影分解法,把SL分解为两个关系模式:
SD(Sno,Sdept)DL(Sdept,Sloc)其中SD的码为Sno,DL的码为Sdept。2023/5/12经济与管理学院344.2.4BC范式(BCNF)设关系模式R<U,F>∈1NF,如果对于R的每一个函数依赖XY,若Y⊈X,则X必含有候选码,那么R∈BCNF。由BCNF的定义可得到结论:一个满足BCNF的关系模式有:所有非主属性对每一个码都是完全函数依赖;所有主属性对每一个不包含它的码,也是完全函数依赖;没有任何属性完全函数依赖于非码的任何一组属性。2023/5/12经济与管理学院35BCNF范式和3NF的区别:BCNF不仅强调其他属性对码的完全的直接的依赖,而且强调主属性对码的完全的直接的依赖,它包括3NF,即R∈BCNF,则R一定属于3NF。3NF只强调非主属性对码的完全直接依赖,这样就可能出现主属性对码的部分依赖和传递依赖。有些关系模式属于3NF,但不一定属于BCNF,如:2023/5/12经济与管理学院36例.在关系模式STJ(S,T,J)中,S表示学生,T表示教师,J表示课程。假设每一教师只教一门课,每门课由若干教师教;某一个学生选定某门课就确定了一个固定教师。则存在的函数依赖为:F={(S,J)→T,(S,T)→J,T→J}关系的码为:(S,J)和
(S,T)。关系的主属性集为:{S,T,J},非主属性为空集,则该关系属于3NF。但不属于BCNF。2023/5/12经济与管理学院374.2.5第四范式(4NF)给定一个关系模式JPW(产品,零件,工序),其中每种产品由多种零件构成,每个零件在装配时需要多道工序。2023/5/12经济与管理学院38该表不存在函数依赖,并且是全码,所以JPW属于BCNF。JPW电视机显像管焊接电视机显像管调试电视机电源测试电视机电源装配电视机电源调试电视机开关焊接电视机开关调试影碟机电源测试影碟机开关调试2023/5/12经济与管理学院39多值依赖(MVD)的定义:设有关系模式R(U,F)是属性集,X、Y是U的子集。如果R的任一关系,对于X的一个确定值,都存在Y的一组值与之对应,且Y的这组值又与Z=U-X-Y中的属性值不相关,此时称Y多值依赖于X,或X多值决定Y,记为X→→Y。根据定义可知:产品→→零件。2023/5/12经济与管理学院40非平凡的多值依赖的定义:在多值依赖中,若X→→Y且Z=U-X-Y≠φ,则称X→→Y为非平凡的多值依赖,否则称为平凡的多值依赖。4NF的定义:关系模式R(U,F)∈1NF,如果对于R的每一个非平凡多值依赖X→→Y(YX),X必含有码,则称R(U,F)∈4NF。
4NF限制关系模式的属性间不许有非平凡且非函数依赖的多值依赖。2023/5/12经济与管理学院41
在JWP模式中,由于它为全码且存在产品→→零件、零件→→工序,而产品和零件都不包含码,故JPW不属于4NF。可分解为:JP(产品,零件)和PW(零件,工序)。2023/5/12经济与管理学院42
函数依赖和多值依赖是两种最重要的数据依赖。如果只考虑函数依赖,则BCNF是最高的关系模式范式;如果考虑了多值依赖,则4NF是最高的关系范式。4.2.6连接依赖与5NF连接依赖是与关系分解和连接运算有关的数据依赖,是研究第5NF的基础。2023/5/12经济与管理学院434.3关系模式的规范化
关系模式的规范化:一个低一级范式的关系模式,通过模式分解可以转换成若干个高一级范式的关系模式集合,这种过程就叫关系模式的规范化。规范化程度可以有6个不同的级别,即6个范式。4.3.1关系模式规范化的步骤
1.问题提出规范化程度过低的关系不一定能够很好的描述现实世界,可能会存在插入异常、删除异常、修改复杂和数据冗余等问题。2023/5/12经济与管理学院442.解决办法对其进行规范化,转换成高一级范式。3.基本思想逐步消除数据依赖中的不合适的部分,使模式中的各关系模式达到某种程度的“分离”,即采用“一事一地”的模式设计原则,让一个关系描述一个概念、一个实体或者实体间的一种联系。若多于一个概念就把它“分离”出去。因此所谓规范化实质上就是概念的单一化。2023/5/12经济与管理学院452NF1NF3NFBCNF4NF5NF消除非主属性对码的部分函数依赖消除非主属性对码的传递函数依赖消除主属性对码的部分和传递函数依赖(使决定属性都称为投影的候选码)消除非平凡且非函数依赖的多值依赖消除不是由候选码所蕴含的连接依赖消除决定属性集非码的非平凡函数依赖2023/5/12经济与管理学院464.3.2关系模式的分解
1.分解原则
只有能够保证分解后的关系模式与原关系模式等价的方法才有意义,即分解后的关系可以通过自然连接恢复为原来的关系,那么这种分解就没有丢失信息。例对于关系模式SL(SNO,SDEPT,SLOC)的分解。(见书本)2023/5/12经济与管理学院472.相关概念定义1:设关系模式R(U,F)被分解为若干个关系模式R1(U1,F1),R2(U2,F2),…Rn(Un,Fn)(其中U=U1∪U2∪…∪Un,且不存在UiUj,Fi为F在Ui上的投影),若R与R1,R2,…Rn自然连接的结果相等,则称关系模式R的这个分解具有无损连接性(losslessjoin)。只有具有无损连接性的分解才能够保证不丢失信息。2023/5/12经济与管理学院48
定义2:设关系模式R(U,F)被分解为若干个关系模式R1(U1,F1),R2(U2,F2),…Rn(Un,Fn)(其中U=U1∪U2∪…∪Un,且不存在UiUj,Fi为F在Ui上的投影),若F所逻辑蕴含的函数依赖一定也由分解得到的某个关系模式中的函数依赖Fi所逻辑蕴含,则称关系模式R的这个分解是保持函数依赖的(preserverdependency)。2023/5/12经济与管理学院493.判断原则判断对关系模式的一个分解是否与原关系模式等价可以有三种不同的标准:分解具有无损连接性。(保证不丢失信息)分解要保持函数依赖。(可减轻或解决各种异常情况)分解既要保持函数依赖,又要具有无损连接性。2023/5/12经济与管理学院504.4关系模式的分解算法
对关系进行模式分解是规范化的主要方法。本节讨论关系模式分解的理论基础、模式分解的算法和模式分解的规范问题。4.4.1关系模式分解的算法基础
1974年W.W.Armstrong提出了一套有效而完备的公理系统-Armstrong公理,该公理后来成为关系模式分解的算法基础。2023/5/12经济与管理学院511.函数依赖的逻辑蕴含的定义设F是模式R(U)的函数依赖集,X和Y是属性集U的子集。如果从F中的函数依赖能推出XY,则称F逻辑蕴涵XY,或称XY是F的逻辑蕴含。2.Armstrong公理系统(1)Armstrong公理系统设U为属性集,F是U上的函数依赖集,于是有关系模式R(U,F)。对于R(U,F)来说,有以下的推理规则:2023/5/12经济与管理学院521)自反律(Reflexivity):若YXU,则XY为F所蕴涵。2)增广律(Augmentation):若XY为F所蕴涵,且ZU,则XZYZ为F所蕴涵。3)传递律(Transitivity):若XY及YZ为F所蕴涵,则XZ为F所蕴涵。(2)Armstrong公理的三个推理1)合并规则(UnionRule):若XY,XZ有XYZ。2023/5/12经济与管理学院532)伪传递规则(PseudotransitivityRule):若XY,WYZ,则XWZ。3)分解规则(positionRule):若XY且ZY,则XZ。注:根据合并规则和分解规则,有:XA1A2…Ak成立的充分必要条件是XAi成立(i=1,2,…,k)。2023/5/12经济与管理学院54(3)Armstrong公理是有效和完备的
Armstrong公理的有效性指在F中根据Armstrong公理推导出来的每一个函数依赖一定为F所逻辑蕴含。Armstrong公理的完备性是指F所逻辑蕴含的每一个函数依赖,必定可以由F出发根据Armstrong公理推导出来。2023/5/12经济与管理学院554.4.2函数依赖集闭包F+和属性集闭包XF+1.函数依赖集闭包F+定义在关系模式R(U,F)中,为F所逻辑蕴含的函数依赖的全体叫做F的闭包,记作F+
。一般情况下,F≤F+
。如果F=F+
,则称F是函数依赖的完备集。2023/5/12经济与管理学院562.属性集闭包XF+的定义设有关系模式R(U,F),X是U的子集,称所有用公理从F推出的函数依赖集XAi中Ai的属性集为X的属性闭包,记作XF+
。即:XF+={Ai|Ai∈U,XAi∈F+}由公理的自反性可知XX,因此XXF+
。2023/5/12经济与管理学院573.属性集闭包XF+的求法算法:求属性集X关于函数依赖F的属性闭包XF+
。输入:关系模式R的全部属性集U,在U上的函数依赖F,U的子集X。输出:关于F的属性闭包XF+。方法:计算X(i)(i=0,1,…)2023/5/12经济与管理学院58(1)令X(0)=X,i=0;(2)X(i+1)=X(i)A;其中A是这样的属性:在F中寻找尚未用过的左边是X(i)的子集的函数依赖:YjZj
(j=1,…k),其中YjX(i)。即在Zj中寻找X(i)中未出现过的属性集合A,若无这样的A则转(4)。(3)判断是否有X(i+1)=X(i),若是则转(4);否则转(2)。(4)输出X(i),即为XF+。2023/5/12经济与管理学院59
对于(3)的停止条件,以下四种方法是等价的:X(i+1)=X(i)A;当发现X(i)包含了全部属性时;在F中的函数依赖的右边属性中再也找不到X(i)中未出现过的属性时;在F中未用过的函数依赖的左边属性已经没有X(i)的子集时。2023/5/12经济与管理学院60例设有关系模式R(U,F),其中U={A,B,C,D,E,I};F={AD,ABE,BIE,CDI,EC},计算(AE)F+解:令X={AE},X(0)=AE
2023/5/12经济与管理学院61
在F中找出左边是AE子集的函数依赖,其结果是:AD,EC,则X(1)=X(0)DC=ACDE。显然X(1)≠X(0)。在F中找出左边是ACDE子集的函数依赖,其结果是:CDI,则X(2)=X(1)I=ACDEI。虽然X(2)≠X(1),但是F中未用过的函数依赖的左边属性已没有X(2)的子集,所以不必再计算下去,即(AE)F+={ACDEI}。2023/5/12经济与管理学院624.4.3函数依赖的等价和覆盖1.函数依赖集的等价的概念设F和G是两个函数依赖集,如果F+=G+,则称F和G等价。F与G等价说明F覆盖G,同时G也覆盖F。2.判断两函数依赖集等价的方法定理:F+=G+的充要条件是FG+且GF+。2023/5/12经济与管理学院633.函数依赖集的最小集(1)最小函数依赖集的定义如果函数依赖集F满足下列条件,则称F为一个极小函数依赖集,亦称为最小依赖集或最小覆盖。F中任一函数依赖的右部仅含有一个属性。F中不存在这样的函数依赖XA,使得F与F-{XA}等价。F中不存在这样的函数依赖XA,X有真子集Z使得F与F-{XA}∪{Z-A}与F等价。2023/5/12经济与管理学院64注:条件1)说明,在最小函数依赖集中的所有函数依赖都应该是“右端没有多余的属性”的最简单的形式;条件2)保证了最小函数依赖集中无多余的函数依赖;条件3)要求,最小函数依赖集中的每个函数依赖的左端没有多余的属性。2023/5/12经济与管理学院65(2)算法:计算最小依赖集输入:一个函数依赖集F。输出:F的一个等价最小依赖集G。方法:1)应用分解规则,使F中每一个依赖的右部属性单一化。2)去掉各依赖左部多余的属性。具体做法是:一个一个地检查F中左边是非单一属性地依赖,例如XYA,现在要判断Y是否为多余地,则以XA代替XYA是否等价?只要在F中求X+,若X+包含A,则Y是多余的属性;否则Y不是多余的属性。依次判断其他属性即可消除各依赖左边的多余属性。2023/5/12经济与管理学院663)去掉多余的依赖。具体做法是:从第一个依赖开始,从F中去掉它(假设该依赖为XY),然后在余下的依赖中求X+,看X+是否包含Y,若是,则去掉XY;若不包含Y,则不能去掉XY。这样依次做下去。2023/5/12经济与管理学院67例1.设有依赖集:F={ABC,DEG,CA,BEC,BCD,CGBD,ACDB,CEAG}计算其等价的最小函数依赖集Fm。2023/5/12经济与管理学院681)利用分解规则,将所有的函数依赖右边属性单一化,结果为:F1={ABC,DE,DG,CA,BEC,BCD,CGB,CGD,ACDB,CEA,CEG}2)在F1中去掉依赖左部多余的属性。对于CEA,由于有CA,则E是多余的;对于ACDB,由于(CD)F1+=ABCDEG,则A是多余的。删除依赖左部多余的依赖后:F2={ABC,DE,DG,CA,BEC,BCD,CGB,CGD,CDB,CEG}2023/5/12经济与管理学院693)在F2中去掉多余的依赖。①设ABC为冗余的函数依赖,则去掉ABC得F3={DE,DG,CA,BEC,BCD,CGB,CGD,CDB,CEG},由于从F3中找不到左部为AB或其子集的函数依赖,则(AB)F3+=AB。由于C(AB)F3+,所以ABC非冗余函数依赖,不能去掉。2023/5/12经济与管理学院70②设CGB为冗余的函数依赖,则去掉CGB得F4={ABC,DE,DG,CA,BEC,BCD,CGD,CDB,CEG},由于(CG)F4+=ABCDEG。由于B(CG)F4+,所以CGB为冗余函数依赖,从F4去掉。2023/5/12经济与管理学院71③设CGD为冗余的函数依赖,则去掉CGD得。
F4={ABC,DE,DG,CA,BEC,BCD,CDB,CEG},由于(CG)F4+=ACG。由于D(CG)F4+,所以CGD为非冗余函数依赖,不能从F4去掉。2023/5/12经济与管理学院72④设CEG为冗余的函数依赖,则去掉CGD得。
F5={ABC,DE,DG,CA,BEC,BCD,CGD,CDB},由于(CE)F5+=ACE,故G(CG)F5+,所以CEG为非冗余函数依赖,不能从F5去掉。故最小函数依赖集为:Fm={ABC,DE,DG,CA,BEC,BCD,CGD,CDB,CEG}2023/5/12经济与管理学院73例2.求F={ABC,AB,BA}的最小函数依赖集Fm。解:1)将F中的最小函数依赖都分解为右部为单属性的函数依赖。很显然,F满足该条件。2)去掉F中冗余的函数依赖。①设ABC是冗余的,去掉得:F1={AB,BA},由于(AB)F1+=AB,故C(AB)F1+,所以ABC不冗余。2023/5/12经济与管理学院74②设AB是冗余的,去掉得:F1={ABC,BA},由于(A)F1+=A,故B(AB)F1+,所以AB不冗余。③设BA是冗余的,去掉得:F1={ABC,AB},由于(B)F1+=B,故A(AB)F1+,所以BA不冗余。经检验后的函数依赖集仍为F。2023/5/12经济与管理学院753)去掉函数依赖左部多余的属性。本题只需考虑ABC的情况。方法1:在决定因素中去掉B,若CAF+,则以AC代替ABC。求得AF+=ABC,由于CAF+,所以以AC代替ABC。故:Fm={AC,AB,BA}2023/5/12经济与管理学院76方法1:在决定因素中去掉A,若CAF+,则以BC代替ABC。求得AF+=ABC,由于CAF+,所以以BC代替ABC。故:Fm={BC,AB,BA}2023/5/12经济与管理学院774.5判断分解服从规范地方法4.5.1判断分解具有无损连接性的方法
定义:设ρ={R1,R2…,RK}是关系模式R(U,F)的一个分解,r是R(U,F)的一个关系。定义即mρ(r)是r在ρ中各关系模式上投影的连接。这里πRi(r)={t.Ui|tr}ki=1mρ(r)=πRi(r)2023/5/12经济与管理学院78
定义:设ρ={R1,R2…,RK}是关系模式R(U,F)的一个分解,如果对于R的任一满足F的关系r都有:r=mρ(r)成立,则称分解ρ具有无损连接性,简称ρ为无损连接。2023/5/12经济与管理学院79算法:检验无损连接性。输入:关系模式R=(A1,A2…,An),它的函数依赖集F以及分解ρ={R1,R2…,RK}。输出:确定ρ是否具有无损连接性。方法:(1)构造一个k行n列的表,第i行对应于关系模式Ri,第j列对应于属性Aj。如果AjRi,,则在第i行第j列上放符号aj,否则放符号bij。2023/5/12经济与管理学院80(2)逐个检查F中的每一个函数依赖,并修改表中的元素。其方法如下:取得F中的一个函数依赖XY,在X的分量中寻找相同的行,然后将这些行中Y的分量改为相同的符号,如果其中有aj,则将bij改为aj;若其中无aj,则改为bij。(3)这样反复进行,如果发现某一行变成了a1,a2,…,ak,则分解ρ具有无损连接性;如果F中所有函数依赖都不能再修改表中的内容,且没有发现这样的行,则分解ρ不具有无损连接。2023/5/12经济与管理学院81例.设有关系模式R(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人体成分分析解读手册
- 淋巴引流排毒技法操作培训手册
- 客户接待咨询流程服务规范
- 农产品品牌化建设推广实施方案
- 季节性关怀服务操作规范
- 心血管风险评估操作标准
- 玉米密植高产种植实施方案
- 高血压患者低盐配餐方案
- 广东省深圳市2026年中考数学一模试卷附答案
- 身体成分检测方案执行手册
- 2025年光伏组件拆卸和更换施工技术方案
- 2025年卫生高级职称考试(心血管内科)(副高)模拟试题及答案
- 香港定居申请书
- 产品动画制作讲解
- 船员机工英语题库及答案
- DL-T+5860-2023+电化学储能电站可行性研究报告内容深度规定
- 2025年河南豫能控股股份有限公司招聘考试笔试试题含答案
- DB6108T 100-2024 一般工业固体废物矿坑回填修复治理技术规范
- 2025年国家安全部公开遴选公务员面试题及答案
- 订单应急预案管理办法
- 节能施工应急预案措施
评论
0/150
提交评论