【教学课件】第四章关系数据库设计理论.ppt

上传人:wuy****n92 文档编号:80436117 上传时间:2023-03-23 格式:PPT 页数:62 大小:625KB
返回 下载 相关 举报
【教学课件】第四章关系数据库设计理论.ppt_第1页
第1页 / 共62页
【教学课件】第四章关系数据库设计理论.ppt_第2页
第2页 / 共62页
点击查看更多>>
资源描述

《【教学课件】第四章关系数据库设计理论.ppt》由会员分享,可在线阅读,更多相关《【教学课件】第四章关系数据库设计理论.ppt(62页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第四章 关系数据库设计理论前面介绍了关系数据库的基本概念、关系模型的三个组成部分,以及关系数据库的标准语言SQL。我们已知关系DB是由一组关系组成的,那么针对一个具体问题,应该如何构造一个适合于它的数据模式(即应构造几个关系,每个关系由哪些属性组成的等)?这就是关系数据库的模式设计问题。规范化理论正是指导我们进行设计的指南和有力工具。0第四章 关系数据库设计理论4.1 数据依赖4.2 范式4.3 关系模式的规范化14.1 数据依赖1.关系模式中的数据依赖关系DB是以关系模式为基础的DB,它利用关系描述现实世界。一个关系即可用来描述实体及其属性,也可用来描述实体间的联系。关系模式是用来定义关系的

2、,是对关系的描述。要清楚地刻画关系,关系模式应该是五元组:R(U,D,DOM,F)F F是属性间数据的依赖关系集合是属性间数据的依赖关系集合(既是描述关系的元组语义,限定组成关系的各个元组必须满足的约束条件)24.1 数据依赖在实际中,这些约束条件有些是通过对属性取值范围的限定反映出来,有些是通过属性间的相互关联反映出来。后者称为“数据依赖”。在关系模式中,对DB模式设计影响最大的是U和F。我们把五元组简化为三元组R(U,F),对F的理解应该是:一个关系模式上的数据依赖,必须是这个关系模式的所有关系都应满足的数据依赖。即:当且仅当U上的一个关系r满足F时,r称为关系模式R(U,F)的一个关系。

3、34.1 数据依赖2.数据依赖对关系模式的影响数据依赖是通过关系中属性间值的相等与否体现出来的数据间的相互关系,是现实世界属性间相互联系的抽象,是数据内在的性质,是语义的体现。在数据依赖中,最重要的是函数依赖和多值依赖。函数依赖普遍存在于现实生活中,下面来看一个例子:44.1 数据依赖数据依赖对关系模式的影响我们建立一个数据库,用以描述某图书馆的一些情况,面临的对象有:借书证,读者,读者单位,联系电话,书号,书名,出版社,出版社地址,借阅日期。于是得到一组属性:U=U=借书证号,读者姓名,读者单位,单位电话,书号,书名,出版社,出版社地址,借阅日期 对这些属性有下面一些语义规定:每个读者只属于

4、一个单位 每个读者可借多本书 不同的书可有相同的书名 一个单位只设一个联系电话 不同的单位不能有相同的电话号码 一个出版社有一个地址,不同出版社可以在同一个地址4.1 数据依赖数据依赖对关系模式的影响由此得到属性组U上的一组函数依赖:F=F=借书证号读者姓名,借书证号读者单位,借书证号单位电话,读者单位单位电话,书号书名,书号出版社,书号出版社地址,出版社出版社地址,(借书证号,书号)借阅日期 借书证号借书证号书书 号号读者姓名读者姓名书书 名名借阅日期借阅日期读者单位读者单位单位电话单位电话出版社出版社出版社地址出版社地址函数依赖图64.1 数据依赖数据依赖对关系模式的影响如果只考虑函数依赖

5、这一种数据依赖,就得到一个描述图书馆的数据库模式Borrow(U,F),它由一个单一的关系模式构成:Borrow(借书证号,读者姓名,读者单位,单位电话,书号,书名,出版社,出版社地址,借阅日期)这个关系模式存在四个问题:数据冗余太大 一个读者可以借多本书,有关这个读者的信息就要在关系中出现多次;而一个单位有许多读者,每个读者都有相同的信息;同时图书馆又要面对许多单位,由此可见,在这个关系模式中,数据的冗余度非常可观。74.1 数据依赖数据依赖对关系模式的影响 修改复杂 如果某个读者更换了单位,他若借了10本书,有关他所在单位的信息在Borrow中重复存放10次,当数据更新时必须无遗漏地修改1

6、0个元组中全部的信息。由于数据冗余,DBMS要付出很大的代价来维护数据库的完整性,否则会面临数据不一致的危险。这就造成了修改的复杂性。84.1 数据依赖数据依赖对关系模式的影响 插入异常 如果刚买进一批新书,因为还没有读者借阅,就无法把有关新书的信息存入Borrow中,这就是插入异常。删除异常 如果某个读者把他借的所有的书都还给了图书馆,那么随着这些书的相关信息的删除,这个读者的信息也丢失了。这就产生了删除异常,即不该删除的信息也删除了。94.1 数据依赖数据依赖对关系模式的影响结论:Borrow不是一个好的关系模式,原因是由存在于关系模式中的某些函数依赖引起的,规范化理论正是用来改造关系模式

7、的指南。104.1 数据依赖3.有关概念函数依赖函数依赖在规范化理论中起着核心作用,它普遍存在于现实生活中,专门讨论一个关系的属性间不同的依赖情况(即不同的函数依赖)。由于属性间依赖情况不同,可使一些关系明显地存在某些不好的性质,因此,要设计一个较佳的、能反映现实世界的关系模式,首先就要深刻理解函数依赖的有关理论,并据此来分析和判断关系是否具有某些不好的性质,然后才能清除关系中这些不合适的部分。114.1 数据依赖有关概念 定义4.1 设R(U)是一个关系模式,U是R的属性集合,X和Y是U的子集。对于R(U)的任意一个可能的关系r,如果r中不存在两个元组,它们在X上的属性值相同,而在Y上的属性

8、值不同,则称“X函数决定Y”或“Y函数依赖于X”,记作XY。对当前关系r的任意两个元组,如果X值相同,则要求Y值也相同,即有一个X值就有一个Y值与之对应。124.1 数据依赖有关概念几点说明:函数依赖不是指关系模式R的某个或某些关系实例满足的约束条件,而是指R的所有关系实例均要满足的约束条件。函数依赖是语义范畴的概念。设计者可对现实世界作强制规定。134.1 数据依赖有关概念术语和记号:XY,但YX,则称XY是非平凡函数依赖。XY,但YX,则称XY是平凡函数依赖。若XY,则X叫做决定因素。若XY,YX,则记作XY。若Y不函数依赖于X,则记作XY。144.1 数据依赖有关概念完全函数依赖与部分函

9、数依赖定义4.2 在R(U)中,如果XY,并且对于X的任意一个真子集X,都有XY,则称Y完全函数依赖于X,记作 。若XY,但Y不完全函数依赖于X,则称Y部分函数依赖于X,记作 。传递函数依赖 定义4.3 在R(U)中,如果XY(YX),YZ,且 YX,则称Z传递函数依赖于X,记作 。154.1 数据依赖有关概念【例】码 定义4.4 设K为R(U,F)中的属性或属性组,若 ,则称K为R的候选码,若候选码多于一个,则选定其中一个为主码。函数依赖图p借书证号借书证号书书 号号读者姓名读者姓名书书 名名借阅日期借阅日期读者单位读者单位单位电话单位电话出版社出版社出版社地址出版社地址fpppppttt1

10、6第四章 关系数据库设计理论4.1 数据依赖4.2 范式4.3 关系模式的规范化174.2 范式范式是衡量数据模式优劣的标准,范式级别越高,其数据冗余和操作异常现象就越少。范式有1NF,2NF,3NF,BCNF,4NF,5NF。范式之间存在的联系:1NF2NF3NFBCNF4NF5NF一个低一级范式的关系模式通过模式分解可转化成若干个高一级范式的关系模式集合,这个过程就叫做规范化。184.2 范式1.第一范式(1NF)定义4.5 若一个关系模式R的所有属性都是不可再分的基本数据项,则R 1NF。例:Borrow 1NF,但不是一个好的关系模式。Borrow(借书证号,读者姓名,读者单位,单位电

11、话,书号,书名,出版社,出版社地址,借阅日期)为什么会有数据冗余,插入异常,删除异常,修改复杂?因为存在部分函数依赖。194.2 范式2.第二范式(2NF)定义4.6 若关系模式R 1NF,并且每一非主属性都完全函数依赖于R的码,则R 2NF。我们将Borrow转化为2NF,即要消除非主属性对码的部分函数依赖。方法:投影分解法204.2 范式 2NF2NF把Borrow分解为三个关系模式:ReaderReader(借书证号,读者姓名,读者单位,单位电话)BookBook(书号,书名,出版社,出版社地址)BORRBORR(借书证号,书号,借阅日期)p借书证号借书证号书书 号号读者姓名读者姓名书书

12、 名名借阅日期借阅日期读者单位读者单位单位电话单位电话出版社出版社出版社地址出版社地址fpppppttt214.2 范式 2NF2NF它们的函数依赖分别如下图所示:这三个关系都属于2NF,联合起来共同表达了原来一个关系所表达的内容,且原来关系不能表达的,它们也能表达。因此,第二范式比第一范式有更强的表达能力,是对现实世界更准确的描述。读者姓名读者姓名借书证号借书证号读者单位读者单位单位电话单位电话书书 号号出版社出版社书书 名名出版社地址出版社地址借阅日期借阅日期书号书号借书证号借书证号224.2 范式 2NF2NFb一个属于2NF的关系模式还会存在某些问题,如:ReaderReader(借书

13、证号,读者姓名,读者单位,单位电话)BookBook(书号,书名,出版社,出版社地址)b原因:存在传递函数依赖冗余消失仍有冗余冗余消失仍有冗余234.2 范式3.第三范式(3NF)定义4.7 若关系模式R中不存在候选码X,属性组Y以及非主属性Z(Z Y),使得XY,YZ和 Y X成立,则R3NF。b要消除关系模式中非主属性对码的传递函数依赖,用投影分解法。读者姓名读者姓名借书证号借书证号读者单位读者单位单位电话单位电话书书 号号出版社出版社书书 名名出版社地址出版社地址244.2 范式 3NF3NF Reader1Reader1(借书证号,读者姓名,读者单位)UnitphoneUnitphon

14、e(读者单位,单位电话)Book1Book1(书号,书名,出版社)PublishPublish(出版社,出版社地址)BorrBorr(借书证号,书号,借阅日期)b它们的函数依赖分别如下图所示:读者姓名读者姓名借书证号借书证号读者单位读者单位读者单位读者单位单位电话单位电话出版社出版社书书 号号书书 名名出版社出版社出版社地址出版社地址书书 号号借书证号借书证号借阅日期借阅日期254.2 范式 3NF3NF一个属于3NF的关系模式一般可令人满意。局部依赖和传递依赖是模式产生冗余和异常的两个重要原因。由于3NF中不存在非主属性对码的局部和传递函数依赖,因此消除了很大一部分异常现象,具有较好的性能。

15、264.2 范式4.BC范式(BCNF)例:设有关系模式 STC(学生,教师,课程)若规定:每一教师只教一门课,每门课由若干教师教 某一学生选定某门课,就确定了一个固定的教师。F=F=教师 课程,(学生,课程)教师,(学生,教师)课程274.2 范式 BC范式STC的候选码为:(学生,课程),(学生,教师)函数依赖图为:关系模式STC的属性都是主属性,不存在非主属 性,所以STC没有任何非主属性对码的传递或 部分依赖,STC3NF。3NF的STC关系模式也存在一些诸如插入异常,删除异常,数据冗余等问题。教师学生课程课程学生教师284.2 范式 BC范式bSTC出现问题的原因:主属性课程依赖于教

16、师,即课程部分依赖于码(学生,教师)。b解决这一问题同样可用投影分解法,将STC分解为两个关系模式:ST(学生,教师),TC(教师,课程)定义4.8 关系模式R 1NF,若XY,且YX时,X必含有码,则R BCNF。b即:在R中,若每个决定因素都包含码,则R BCNF。294.2 范式 BC范式由定义可知:STC(学生,教师,课程)不属于BCNF。因为教师课程,但教师即不是候选码,也不包含候选码。而ST(学生,教师)和 TC(教师,课程)都属于BCNF。BCNF即检查非主属性,又检查主属性,显然比3NF限制更严格。304.2 范式 BC范式由BCNF的定义可看到,每个BCNF的关系模式都具有如

17、下三个性质:所有非主属性都完全函数依赖于每个码;所有主属性都完全函数依赖于每个不包含它的码;没有任何属性完全函数依赖于非码的任何一组属性。若RBCNF,则R3NF。若R3NF RBCNF,若R只有一个候选码,则R3NFRBCNF。314.2 范式 BC范式【例1 1】S(S#S(S#,SNSN,SESE,SASA,SD)SD)解:解:SNSN有可能重名,则KEYKEYS#S#,没有任何属性对S#S#部分和传递函数依赖,S S 3NF3NF。同时S#S#是唯一决定因素,S S BCNFBCNF。【例2 2】C(C#C(C#,CNCN,PC#)PC#)解:解:设CNCN具有唯一性,则KEYKEYC

18、#C#或KEYKEYCNCN,都为单属性,彼此不相交。其它属性不存在对码的部分和传递函数依赖,C C 3NF3NF。同时除C#C#,CNCN外,无其它决定因素,C C BCNFBCNF。【例3 3】SC(S#SC(S#,C#C#,G)G)解:解:KEYKEY(S#(S#,C#)C#),唯一决定因素,S S BCNFBCNF。324.2 范式 BC范式【例4 4】SCP(SSCP(S,C C,P)P)语义:每位学生(S)每门课(C)都有一个确定的名次(P),每门课中每一名次只有一个学生。函数依赖:F=F=(S,C)P,(C,P)S(S,C)P,(C,P)S,(S,C)(S,C)和(C,P)(C,

19、P)都可作为候选码。候选码各由两个属性组成,且相交,SCPSCP中显然没有属性对码的部分和传递函数依赖,SCPSCP 3NF3NF。且除(S,C)(S,C),(C,P)(C,P)外没有其它决定因素,SCPSCP BCNFBCNF。334.2 范式 BC范式【例5 5】STC(SSTC(S,T T,C)C)语义:每位教师(T)只教一门课(C),每门课有若干教师,某一学生(S)选定某门课就对应一个固定的教师。函数依赖:F=F=(S,C)T,(S,T)C,TC(S,C)T,(S,T)C,TC,(S,C)(S,C)和(S,T)(S,T)都可作为候选码。显然STCSTC 3NF3NF,没有任何非主属性对

20、码的部分和传递函数依赖,但STCSTC不是BCNFBCNF,因为T T是决定因素,但T T不包含码。S SC CT TS ST TC C344.2 范式 BC范式若一个关系DB中的所有关系模式都属于BCNF,则在函数依赖范畴内已实现了模式的彻底分解,达到了最高的规范化程度,消除了插入异常和删除异常。3NF的不彻底性表现在可能存在主属性对码的部分和传递函数依赖。354.2 范式5.多值依赖与第四范式(4NF)多值依赖【例】学校中某门课由多个教师讲授,他们使用相同的一套参考书。数学 邓军,陈斯 数学分析,高等代数,微分方程 物理 李平,王强,刘明 普通物理学,光学原理 b可以用一个关系模式Teac

21、h(C,T,B)表示课程C、教师T和参考书B之间的关系。364.2 范式 多值依赖与第四范式b关系Teach(C,T,B)Teach(C,T,B)可以用右边的二维表表示:b关系模式Teach(C,T,B)Teach(C,T,B)的码是全码:Key=(C,T,B)Key=(C,T,B)TeachTeach BCNFBCNF,但存在问题:当某门课增加一位教师,必须插入多个元组。当要去掉某本参考书,也必须删除多个元组。当要修改某门参考书,也必须修改多个元组。课程C教师T参考书B数学邓军数学分析数学邓军高等代数数学邓军微分方程数学陈斯数学分析数学陈斯高等代数数学陈斯微分方程物理李平普通物理学物理李平光

22、学原理物理王强普通物理学物理王强光学原理物理刘明普通物理学物理刘明光学原理 4.2 范式 多值依赖与第四范式显然,数据的更新不方便,且冗余十分明显。只所以会出现上述问题,分析后可发现:课程与教师有直接关系;课程与参考书有直接关系;但教师与参考书之间没有直接联系,是一个间接联系。即参考书的取值和教师的取值是彼此独立毫无关系的,它们都只取决于课程名。把有间接联系的属性放在一个关系模式中,就会产生数据冗余和各种异常。384.2 范式 多值依赖与第四范式 定义4.9 设R(U)是属性集U上的关系模式,X,Y,Z是U的子集,且Z=U-X-Y,多值依赖XY成立,当且仅当对R(U)的任一关系r,r在(X,Z

23、)上的每个值对应一组Y值,这组值仅仅决定于X值而与Z值无关。若Z=,则XY为平凡多值依赖。等价定义:若关系模式R(U)的任意关系r的任意两个元组在X属性上的值相等,则交换这两个元组在Y上的属性值,得到的新元组也必定是r中的元组,则XY。394.2 范式 多值依赖与第四范式多值依赖指的是:两个属性或属性集相互独立。例:在Teach(C,T,B)中,每个(C,B)上的值对应一组T值:(物理,光学原理)李平,王强,刘明 这组值仅仅决定于课程上的值,即:(物理,普通物理学)李平,王强,刘明参考书B的值已改变,但教师T的值没变,CT (T多值依赖于C)。多值依赖给出多对多联系,而函数依赖只给出多对一联系

24、。404.2 范式 多值依赖与第四范式多值依赖具有下列性质:对称性:若XY,则XZ,其中Z=U-X-Y。例:在关系模式Teach(C,T,B)中,已知CT,根据多值依赖的对称性,必有CB。对每个C Ci i,T T有个完整的集合与之对应,B B也同样。T TCiCi中的每个值和BBCiCi中的每个值对应,正好形成一个完全二分图。C Ci iT Ti1 i1 T Ti2 i2 T TininB Bi1i1 B Bi2 B Bin与Ci对应的全部T值:TTCiCi教Ci的全体教师与Ci对应的全部B值:BBCiCi Ci使用的所有参考书 CT,而B与T完全对称,CB。4.2 范式 多值依赖与第四范式

25、传递性:若XY,YZ,则XZ-Y。替代性:若XY,则XY。(XY时,X的每一个值x,Y有一个确定的值y与之对应,XY)b函数依赖可看成是多值依赖的特殊情况。多值合并性:若XY,XZ,则XYZ。多值分解性:若XY,XZ,则XYZ,XY-Z,XZ-Y。424.2 范式 多值依赖与第四范式多值依赖的有效性与属性集的范围有关 若XY,在U上成立,则在W(XYWU)上一定成立。但XY,在W(WU)上成立,在U上并不一定成立。(这是因为多值依赖的定义中不仅涉及到X和Y,而且涉及到U中的其余属性Z)若多值依赖XY在R(U)上成立,对于YY,并不一定有XY成立。但若XY在R上成立,则对任意YY,均有XY成立。

26、这两条是函数依赖与多值依赖的基本区别434.2 范式 多值依赖与第四范式例:R(C,T,H,R,S,G),其中C为课名,T为教师,H为时间,R为教室,S为学生,G为成绩。有语义:一门课由一个教师开设,但在不同时间可以安排在不同的教室。即一门课可以有一组“时间,教室”与之对应,而与听课的学生与成绩无关。列出两个学生听课情况:取出任意两个元组,同时交换HR中 属性,所得新元组必在原r中,而S 与G的值不受影响。有CHR,THR等。又有HHR,但CH 不成立。(C1,T1,H2,R1,S1,G1)和 (C1,T1,H1,R2,S1,G1)不在r中。C CTH HR RSGC C1 1C C1 1C

27、C1 1C C1 1T1T1T1T1H H1 1H H2 2H H1 1H H2 2R R1 1R R2 2R R1 1R R2 2S1S1S2S2G1G1G2G2444.2 范式 多值依赖与第四范式第四范式(4NF)定义4.10 关系模式R1NF,如果对于R的每个非平凡多值依赖XY(YX),X都含有候选码,则R4NF。4NF就是限制关系模式的属性之间不允许有非平凡且非函数依赖的多值依赖。因为根据定义,对于每一个非平凡的多值依赖XY,X都含有候选码,于是就有XY,所以4NF所允许的非平凡的多值依赖实际上是函数依赖。显然,若R4NF RBCNF。454.2 范式 多值依赖与第四范式例:在Teac

28、h(C,T,B)中,CT,CB都是非平凡的多值依赖,而Key=(C,T,B),即C不是码。Teach4NF。分解为:CT(C,T),CB(C,B)后,都属于4NF。虽有CT,但这是平凡多值依赖。因此在多值依赖时,解决数据冗余和更新异常现象的方法是:把关系分解成仅含平凡多值依赖的多个关系。一个满足4NF的关系模式特点:该关系模式满足BCNF;该关系模式只允许出现平凡多值依赖。464.2 范式 多值依赖与第四范式在Teach(C,T,B)Teach(C,T,B)中,前面提到的问题可得到解决:参考书只需在CB中存储一次 某门课增加一位教师,只需在CT中增加一个 元组 某门课去掉某本参考书时,只需在C

29、B中删除 一个元组函数依赖和多值依赖是两种最重要的数据依赖。若考虑函数依赖,则属于BCNF的关系模式已很完美;若考虑多值依赖,则属于4NF的关系已很完美。47第四章 关系数据库设计理论4.1 数据依赖4.2 范式4.3 关系模式的规范化484.3 关系模式的规范化一个关系的每一个分量是不可再分的数据项,是规范化关系的最基本的条件,规范化程度可以有6个不同的级别(6个范式)。一个低一级范式的关系模式,通过模式分解可以转换为若干个高一级范式的关系模式集合,这个过程就叫做关系模式的规范化。494.3 关系模式的规范化1.关系模式规范化的步骤 1NF1NF 消除非主属性对码的部分函数依赖 2NF 2N

30、F 消除非主属性对码的传递函数依赖 3NF 3NF 消除主属性对码的部分和传递函数依赖 BCNF BCNF 消除非平凡且非函数依赖的多值依赖 4NF 4NF 504.3 关系模式的规范化2.关系模式的分解关系模式的规范化过程是通过对关系模式的分解来实现的,但是把低一级的关系模式分解为若干个高一级的关系模式的方法不是唯一的,在这些分解方法中,只有能够保证分解后关系模式与原关系模式等价的方法才是有意义的。514.3 关系模式的规范化例:SL(Sno,Sdept,Sloc),其中Sno是学号,Sdept是学生所在系,Sloc是学生住处,每个系的学生住在同一个地方。F=SnoSdept,SnoSloc

31、,SdeptSloc 存在传递函数依赖,SL2NF。524.3 关系模式的规范化b第一种分解:SN(Sno),SC(Sdept),SO(Sloc)b分解后都是规范化程度很高 的关系模式,但分解后丢失了 许多信息。b此种分解方法不可取。要使 分解有意义,起码的要求是后 者不能丢失前者的信息。如果b分解后的关系可以通过自然连接恢复为原来的关系,则这种分解就没有丢失信息。SnoSnoSdeptSdeptSlocSloc9800198002980039800498005CSISMAISPHABCBBSLSL534.3 关系模式的规范化b第二种分解:NL(Sno,Sloc),DL(Sdept,Sloc)

32、SnoSnoSlocSlocSdeptSdept9800198002980029800398004980049800598005ABBCBBBBCSISPHMAISPHISPHSnoSnoSlocSloc9800198002980039800498005ABCBBSdeptSdeptSlocSlocCSISMAISPHABCBBNLNLDLDLNLDL 连接后多了三个元组,将无法知道原来关系中究竟有哪些元组,从这个意义上讲,这个分解仍然丢失了信息。544.3 关系模式的规范化b第三种分解:ND(Sno,Sdept),NL(Sno,Sloc)SnoSnoSdeptSdept98001980029

33、80039800498005CSISMAISPHSnoSnoSlocSloc9800198002980039800498005ABCBBSnoSnoSdeptSdeptSlocSloc9800198002980039800498005CSISMAISPHABCBBNDNDNLNLNDNDNLNL没有丢失信息,恢复为原来的关系,这种分解称为:“无损连接分解”。554.3 关系模式的规范化定义4.11 设关系模式R(U,F)被分解为若干个关系模式R1(U1,F1),R2(U2,F2),Rn(Un,Fn)(其中U=U1 U2 Un,且不存在UiUj,Fi为F在Ui上的投影),若R与R1,Rn自然连接

34、的结果相等,则称R的这个分解具有无损连接性。只有具有无损连接性的分解才能保证不丢失 信息564.3 关系模式的规范化第三种分解虽然具有无损连接性,保证了不丢失原关系中的信息,但它并没有解决各种异常现象。如:98001转系,则两个关系中相应的元组必须同时修改。因为这种分解没有保证原关系中的函数依赖,SL中的SdeptSloc即没有投影到ND上,也没有投影到NL上,而是跨在两个关系上。574.3 关系模式的规范化定义4.12 设关系模式R(U,F)被分解为若干个关系模式R1(U1,F1),R2(U2,F2),Rn(Un,Fn)(其中U=U1 U2 Un,且不存在UiUj,Fi为F在Ui上的投影),

35、若F所逻辑蕴涵的函数依赖一定也由分解得到的某个关系模式中的函数依赖Fi所逻辑蕴涵,则称关系模式R的这个分解是保持函数依赖的。584.3 关系模式的规范化第四种分解:ND(Sno,Sdept),DL(Sdept,Sloc)这种分解保持了函数依赖。判断对关系模式的一个分解是否与原关系模式等价,可有三种不同的标准:分解具有无损连接性;分解要保持函数依赖;分解即要保持函数依赖,又要具有无损连接性。594.3 关系模式的规范化分解具有无损连接性和分解保持函数依赖是两个互相独立的标准。如果一个分解具有无损连接性,则它能保证不丢失信息。如果一个分解保持了函数依赖,则它可以减轻或解决各种异常情况。最后应当注意的是,规范化理论为数据库设计提供了理论的指南和工具,但仅仅是指南和工具。并不是规范化程度越高,模式就越好,实际应用中还必须结合应用环境和具体情况,合理地选择数据库模式。60 第四章结束 61

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁