《数据库系统原理与应用(第二版)》课件第4章.ppt

上传人(卖家):momomo 文档编号:7333348 上传时间:2023-11-28 格式:PPT 页数:32 大小:806KB
下载 相关 举报
《数据库系统原理与应用(第二版)》课件第4章.ppt_第1页
第1页 / 共32页
《数据库系统原理与应用(第二版)》课件第4章.ppt_第2页
第2页 / 共32页
《数据库系统原理与应用(第二版)》课件第4章.ppt_第3页
第3页 / 共32页
《数据库系统原理与应用(第二版)》课件第4章.ppt_第4页
第4页 / 共32页
《数据库系统原理与应用(第二版)》课件第4章.ppt_第5页
第5页 / 共32页
点击查看更多>>
资源描述

1、第四章 关系数据库设计理论关系数据库设计理论关系数据库设计理论 4.1 数据依赖 4.2 范式 4.3 关系模式的分解关系数据库设计理论关系数据库设计理论 关系数据库设计理论的中心问题是数据依赖性。所谓关系数据库设计理论的中心问题是数据依赖性。所谓数据依赖是实体属性值之间相互联系和相互制约的关数据依赖是实体属性值之间相互联系和相互制约的关系,是现实世界属性间相互联系的抽象,是数据内在系,是现实世界属性间相互联系的抽象,是数据内在的性质,是语义的体现。的性质,是语义的体现。现在人们已经提出了许多类型的数据依赖,现在人们已经提出了许多类型的数据依赖,其中函数依其中函数依赖赖(Functional

2、DependencyFunctional Dependency,简称为,简称为FDFD)和)和多值依赖多值依赖(Multivalued DependencyMultivalued Dependency,简称为,简称为MVDMVD)是与数据库设)是与数据库设计理论中最重要的两种数据依赖类型。计理论中最重要的两种数据依赖类型。关系数据库设计理论关系数据库设计理论4.1 数据依赖 1.函数依赖 定义:设R(U)是一个关系模式,U是R的属性集合,X和Y是U的子集。对于R(U)的任意一个可能的关系r,如果r中不可能存在两个元组在X上的属性值相同,而在Y上的属性值不同,则称“X函数确定Y”或“Y函数依赖于

3、X”,记作XY。关系数据库设计理论关系数据库设计理论 -对于函数依赖,需要说明以下几点:(1)函数依赖是指关系模式R的所有元组均要满足的约束条件,而不仅仅指R中某个或某些元组满足的约束条件特例。(2)函数依赖并不一定具有可逆性。例如一般认为CardidClass,即由于读者的卡号具有惟一性,因此读者的卡号可确定读者的类型,而反之则不行。(3)若XY,则X称为这个函数依赖的决定属性集(Determinant)。关系数据库设计理论关系数据库设计理论 (4)函数依赖和别的数据之间的依赖关系一样,是语义范畴的概念。(5)数据库设计者可以对描述现实世界的关系模式作强制性的规定。(6)若XY,并且YX,则

4、记为 XY。(7)若Y不函数依赖于X,则记为X Y。定义:在关系模式R(U)中,对于U的子集X和Y,如果XY,但Y X,则称XY是非平凡函数依赖。若Y X,则称XY为平凡函数依赖.对于任意一种关系模式,平凡函数依赖都是必然成立的,它不反映新的语义.关系数据库设计理论关系数据库设计理论 2.平凡函数依赖与非平凡函数依赖 3完全函数依赖与部分函数依赖完全函数依赖与部分函数依赖4传递函数依赖传递函数依赖关系数据库设计理论关系数据库设计理论关系数据库设计理论关系数据库设计理论5码 码是关系模式中的一个重要概念,候选码能惟一标识一个元组(二维表中的一行),是关系模式中一组最重要的属性。另一方面,主码又和

5、外部码一同提供了表示关系间联系的手段。关系数据库设计理论关系数据库设计理论 4.2 范式 定义定义:如果一个关系模式如果一个关系模式R R的所有属性都是不可分的基本的所有属性都是不可分的基本数据项(即每个属性都只包含单一的值),则称数据项(即每个属性都只包含单一的值),则称R R满足第一满足第一范式,记为范式,记为R1 1NFR1 1NF。在任何一个关系数据库系统中,第一范式是关系模式的在任何一个关系数据库系统中,第一范式是关系模式的一个最起码的要求。不满足第一范式的数据库模式不能称一个最起码的要求。不满足第一范式的数据库模式不能称为关系数据库。为关系数据库。1.第一范式第一范式(1NF)关系

6、数据库设计理论关系数据库设计理论 4.2 范式定义定义:若关系模式若关系模式R满足第一范式,即满足第一范式,即R 1NF,并且,并且每一个非主属性都完全函数依赖于每一个非主属性都完全函数依赖于R的码(即不存在的码(即不存在部分依赖),则部分依赖),则R满足第二范式,记为满足第二范式,记为R 2NF。2.第二范式第二范式(2NF)关系数据库设计理论关系数据库设计理论定义定义:如果关系模式如果关系模式R RU,FU,F中不存在侯选码中不存在侯选码X X、属、属性组性组Y Y以及非主属性以及非主属性Z Z(Z YZ Y),使得),使得XYXY,YZYZ和和Y Y X X成立,则成立,则R 3NFR

7、3NF。4.2 范式3.第三范式第三范式(3NF)关系数据库设计理论关系数据库设计理论 定义定义:设关系模式设关系模式R RU,FU,F1NF1NF,如果对于,如果对于R R的每个函数的每个函数依赖依赖XYXY,若,若Y XY X,则,则X X必含有候选码,那么必含有候选码,那么R BCNFR BCNF。4.2 范式4.BCNFBCNFBCNF(Boyce Codd Normal FormBoyce Codd Normal Form)是由)是由BoyceBoyce和和CoddCodd联合提出联合提出的,比的,比3NF3NF更进一步。通常认为更进一步。通常认为BCNFBCNF是修正的第三范式。是

8、修正的第三范式。由由BCNFBCNF的定义可以看到,每个的定义可以看到,每个BCNFBCNF的关系模式都具有如下的关系模式都具有如下3 3个性质:个性质:(1 1)所有非主属性都完全函数依赖于每个候选码。)所有非主属性都完全函数依赖于每个候选码。(2 2)所有主属性都完全函数依赖于每个不包含它的候选码。)所有主属性都完全函数依赖于每个不包含它的候选码。(3 3)没有任何属性完全函数依赖于非码的任何一组属性。)没有任何属性完全函数依赖于非码的任何一组属性。5.多值依赖与第四范式(多值依赖与第四范式(4NF)语言程序设计数据库原理信息管理学李四张三信息管理C网络安全布线工程网络原理刘军王成李明计算

9、机网络图图4-6 课程教师参考书之间的关系课程教师参考书之间的关系关系数据库设计理论关系数据库设计理论 4.2 范式关系模式Teach(C,T,B)该关系可用二维表表示如下:该关系可用二维表表示如下:课程(课程(C)教师(教师(T)参考书(参考书(B)信息管理信息管理张三张三信息管理学信息管理学信息管理信息管理张三张三数据库原理数据库原理信息管理信息管理张三张三C语言程序设计语言程序设计信息管理信息管理李四李四信息管理学信息管理学信息管理信息管理李四李四数据库原理数据库原理信息管理信息管理李四李四C语言程序设计语言程序设计计算机网络计算机网络李明李明网络原理网络原理计算机网络计算机网络李明李明

10、布线工程布线工程关系数据库设计理论关系数据库设计理论 课程(课程(C)教师(教师(T)参考书(参考书(B)计算机网络计算机网络李明李明网络安全网络安全计算机网络计算机网络王成王成网络原理网络原理计算机网络计算机网络王成王成布线工程布线工程计算机网络计算机网络王成王成网络安全网络安全计算机网络计算机网络刘军刘军网络原理网络原理计算机网络计算机网络刘军刘军布线工程布线工程计算机网络计算机网络刘军刘军网络安全网络安全续表续表关系数据库设计理论关系数据库设计理论 关系数据库设计理论关系数据库设计理论 关系模式Teach(C,T,B),C表示课程,T表示教师,B表示参考书 Teach具有惟一候选码(C,

11、T,B),即全码,因而Teach BCNF。但Teach模式中存在一些问题:(1)数据冗余度大。(2)增加操作复杂。(3)删除操作复杂。(4)修改操作复杂。定义定义:设设R R(U U)是一个属性集)是一个属性集U U上的一个关系模式,上的一个关系模式,X X、Y Y和和Z Z是是U U的子集,并且的子集,并且Z ZU UX XY Y,多值依赖,多值依赖XYXY成立当且仅当对成立当且仅当对R R的的任一关系任一关系r r,r r在(在(X X,Z Z)上的每个值对应一组确定)上的每个值对应一组确定Y Y的值,这组的值,这组Y Y值仅仅决定于值仅仅决定于X X而与而与Z Z值无关值无关 4.2

12、范式5.多值依赖与第四范式(多值依赖与第四范式(4NF)关系数据库设计理论关系数据库设计理论(1)多值依赖多值依赖(1 1)多值依赖具有对称性。)多值依赖具有对称性。(2 2)多值依赖具有传递性。)多值依赖具有传递性。(3 3)函数依赖可以看作是多值依赖的特殊情况。)函数依赖可以看作是多值依赖的特殊情况。(4 4)若)若XYXY,XZXZ,则,则XYZXYZ。(5 5)若)若XYXY,XZXZ,则,则XY-ZXY-Z,XZ-YXZ-Y。(6 6)多值依赖的有效性与属性集的范围有关。)多值依赖的有效性与属性集的范围有关。(7 7)若多值依赖)若多值依赖XYXY在在R R(U U)上成立,对于)上

13、成立,对于Y Y,并不,并不一定有一定有XX成立。成立。多值依赖具有下列性质多值依赖具有下列性质关系数据库设计理论关系数据库设计理论(2)第四范式(第四范式(4NF)定义:关系模式RU,F1NF,如果对于R的每个非平凡多值依赖XY(YX),X都含有候选码,则R4NF。关系数据库设计理论关系数据库设计理论 通俗地说,一个关系模式如果已满足BCNF,且没有非平凡且非函数依赖的多值依赖,则关系模式属于4NF。一个关系模式R4NF,则必有RBCNF。4NF就是限制关系模式的属性之间不允许有非平凡且非函数依赖的多值依赖。4.3 关系模式的分解关系模式的分解返回首页返回首页关系数据库设计理论关系数据库设计

14、理论 规范化的基本思想是对已有的关系模式进行分解来实规范化的基本思想是对已有的关系模式进行分解来实现的,它逐步消除数据依赖中不合适的部分,把低一现的,它逐步消除数据依赖中不合适的部分,把低一级的关系模式分解为多个高一级的关系模式,使模式级的关系模式分解为多个高一级的关系模式,使模式中的各关系模式达到某种程度的中的各关系模式达到某种程度的“分离分离”。即采用。即采用“一事一地一事一地”的模式设计原则,让一个关系描述一个的模式设计原则,让一个关系描述一个概念、一个实体或者实体间的一种联系,若多于一个概念、一个实体或者实体间的一种联系,若多于一个概念就把它概念就把它“分离分离”出去。因此所谓规范化实

15、质上是出去。因此所谓规范化实质上是概念的单一化。概念的单一化。1.关系模式规范化的步骤关系模式规范化的步骤关系数据库设计理论关系数据库设计理论4.3 关系模式的分解关系模式的分解(1 1)对)对1NF1NF关系进行关系进行投影,消除原关系中投影,消除原关系中非主属性对码的部分非主属性对码的部分函数依赖,将函数依赖,将1NF1NF关系关系转换为若干个转换为若干个2NF2NF关系关系。(2 2)对)对2NF2NF关系进行关系进行投影,消除原关系中投影,消除原关系中非主属性对码的传递非主属性对码的传递函数依赖,从而产生函数依赖,从而产生一组一组3NF3NF关系。关系。(5 5)对)对4NF4NF关系

16、进行投影,消除原关系中不是由候关系进行投影,消除原关系中不是由候选码所蕴含的连接依赖,即可得到一组选码所蕴含的连接依赖,即可得到一组5NF5NF关系。关系。关系数据库设计理论关系数据库设计理论1.关系模式规范化的步骤关系模式规范化的步骤4.3 关系模式的分解关系模式的分解(4)对)对BCNF关系进行投影,消除原关系中非平凡关系进行投影,消除原关系中非平凡且非函数依赖的多值依赖,从而产生一组且非函数依赖的多值依赖,从而产生一组4NF关系关系(3)(3)对对3NF3NF关系进行投影,消除原关系中主属性对码关系进行投影,消除原关系中主属性对码的部分函数依赖和传递函数依赖(也就是说,使决定的部分函数依

17、赖和传递函数依赖(也就是说,使决定属性都成为投影的候选码),得到一组属性都成为投影的候选码),得到一组BCNFBCNF关系。关系。2.关系模式的分解关系模式的分解 关系模式的规范化过程是通过对关系模式的分解来关系模式的规范化过程是通过对关系模式的分解来实现的,但是把低一级的关系模式分解为若干个高一实现的,但是把低一级的关系模式分解为若干个高一级的关系模式的方法并不是惟一的。在这些分解方法级的关系模式的方法并不是惟一的。在这些分解方法中,只有能够保证分解后的关系模式与原关系模式等中,只有能够保证分解后的关系模式与原关系模式等价的方法才有意义。价的方法才有意义。关系数据库设计理论关系数据库设计理论

18、READERREADER关系模式有下列函数依赖:关系模式有下列函数依赖:CardidClass CardidClass ClassMaxcountClassMaxcountCardidMaxcountCardidMaxcount 关系数据库设计理论关系数据库设计理论例如,对于例如,对于“读者读者”关系模式关系模式READER(Cardid,Class,Maxcount)READER(Cardid,Class,Maxcount),其中,其中ClassClass为读者类型,为读者类型,它决定一个读者可以借书的最大数量(它决定一个读者可以借书的最大数量(MaxcountMaxcount)。)。Car

19、didClassMaxcountT0001110T0101110S011135S010225READER关系数据库设计理论关系数据库设计理论第一种分解方法是将READER分解为下面3个关系模式:R1(Cardid)R2(Dept)R3(Class)分解后的关系为:关系数据库设计理论关系数据库设计理论第二种分解方法是将第二种分解方法是将READER分解为下面两个关系模式:分解为下面两个关系模式:RM(Cardid,Maxcount)CM(Class,Maxcount)分解后的关系为:分解后的关系为:关系数据库设计理论关系数据库设计理论对对RM和和CM关系进行自然连接的结果为:关系进行自然连接的结果为:关系数据库设计理论关系数据库设计理论第三种分解方法是将READER关系分解为下面两个关系模式:RC(Cardid,Class),RM(Cardid,Maxcount)分解后的关系为:关系数据库设计理论关系数据库设计理论 第四种分解方法是将READER分解为下面两个关系模式:RC(Cardid,Class),CM(Class,Maxcount)。关系数据库设计理论关系数据库设计理论这种分解方法保持了函数依赖。判断关系模式的一个分解是否与原关系模式等价可以有三种不同的标准:(1)分解具有无损连接性。(2)分解要保持函数依赖。(3)分解既要保持函数依赖,又要具有无损连接。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 大学
版权提示 | 免责声明

1,本文(《数据库系统原理与应用(第二版)》课件第4章.ppt)为本站会员(momomo)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|