ImageVerifierCode 换一换
格式:PPTX , 页数:80 ,大小:411.56KB ,
资源ID:982198      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/982198.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(关系数据库的规范化设计.pptx)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

关系数据库的规范化设计.pptx

1、2022/10/14,1,本章重要概念,(1)关系模式的冗余和异常问题。(2)FD的定义、逻辑蕴涵、闭包、推理规则、与关键码的联系;平凡的FD;属性集的闭包;推理规则的正确性和完备性;FD集的等价;最小依赖集。(3)无损分解的定义、性质、测试;保持依赖集的分解。(4)关系模式的范式:1NF,2NF,3NF,BCNF。分解成2NF、3NF模式集的算法。,2022/10/14,2,前 言,关系数据库的规范化设计是指面对一个现实问题,如何选择一个比较好的关系模式集合。规范化设计理论主要包括三个方面的内容:数据依赖、范式和模式设计方法。其中数据依赖起着核心的作用。数据依赖研究数据之间的联系,范式是关系

2、模式的标准,模式设计方法是自动化设计的基础。规范化设计理论对关系数据库结构的设计起着重要的作用。,2022/10/14,3,4.1.1 关系模型的外延和内涵,外延就是通常所说的关系、表或当前值,它的基本性质已在前面介绍过。由于用户经常对关系进行插入、删除和修改操作,因此外延是与时间有关的,随着时间的推移在不断变化。内涵是与时间独立的,是对数据的定义以及数据完整性约束的定义。对数据的定义包括对关系、属性、域的定义和说明。对数据完整性约束的定义涉及面较广,主要包括以下几个方面:静态约束,涉及到数据之间联系(称为“数据依赖,data dependences)、主键和值域的设计。动态约束,定义各种操作

3、(插入、删除、修改)对关系值的影响。,2022/10/14,4,4.1.2 关系模式的冗余和异常问题(一),例4.1,图4.1 关系模式R的实例,2022/10/14,5,4.1.2 关系模式的冗余和异常问题(二),数据冗余 如果一个教师教几门课程,那么这个教师的地址就要重复几次存储。操作异常 由于数据的冗余,在对数据操作时会引起各种异常:修改异常。例如教师t1教三门课程,在关系中就会有三个元组。如果他的地址变了,这三个元组中的地址都要改变。若有一个元组中的地址未更改,就会造成这个教师的地址不惟一,产生不一致现象。插入异常。如果一个教师刚调来,尚未分派教学任务,那么要将教师的姓名和地址存储到关

4、系中去时,在属性C#和CNAME上就没有值(空值)。在数据库技术中空值的语义是非常复杂的,对带空值元组的检索和操作也十分麻烦。删除异常。如果在图4.1中要取消教师t3的教学任务,那么就要把这个教师的元组删去,同时也把t3的地址信息从表中删去了。这是一种不合适的现象。,2022/10/14,6,4.1.2 关系模式的冗余和异常问题(三),2022/10/14,7,4.2.1 函数依赖的定义(一),定义4.1 设有关系模式R(U),X和Y是属性集U的子集,函数依赖(Functional Dependency,简记为FD)是形为XY的一个命题,只要r是R的当前关系,对r中任意两个元组t和s,都有tX

5、=sX蕴涵tY=sY,那么称FD XY在关系模式R(U)中成立。,2022/10/14,8,4.2.1 函数依赖的定义(二),例4.2,图4.3 关系模式R 的两个关系,2022/10/14,9,4.2.1 函数依赖的定义(三),例4.3 有一个关于学生选课、教师任课的关系模式:R(S#,SNAME,C#,GRADE,CNAME,TNAME,TAGE)属性分别表示学生学号、姓名、选修课程的课程号、成绩、课程名、任课教师姓名和年龄等意义。如果规定,每个学号只能有一个学生姓名,每个课程号只能决定一门课程,那么可写成下列FD形式:S#SNAME C#CNAME每个学生每学一门课程,有一个成绩,那么可

6、写出下列FD:(S#,C#)GRADE还可以写出其他一些FD:C#(CNAME,TNAME,TAGE)TNAMETAGE,2022/10/14,10,4.2.2 FD的逻辑蕴涵,定义4.2 设F是在关系模式R上成立的函数依赖的集合,XY是一个函数依赖。如果对于R的每个满足F的关系r也满足XY,那么称F逻辑蕴涵XY,记为F XY。定义4.3 设F是函数依赖集,被F逻辑蕴涵的函数依赖全体构成的集合,称为函数依赖集F的闭包(closure),记为F+。即 F+=XY|记为F XY。,2022/10/14,11,4.2.3 FD的推理规则(一),设U是关系模式R的属性集,F是R上成立的只涉及到U中属性

7、的函数依赖集。FD的推理规则有以下三条:A1(自反性,Reflexivity):若YXU,则XY在R上成立。A2(增广性,Augmentation):若XY在R上成立,且ZU,则XZYZ在R上成立。A3(传递性,Transitivity):若XY和YZ在R上成立,则XZ在R上成立。,2022/10/14,12,4.2.3 FD的推理规则(二),定理4.1 FD推理规则A1、A2和A3是正确的。也就是,如果XY是从F用推理规则导出,那么XY在F+中。定理4.2 FD的其他五条推理规则:(1)A4(合并性,Union):XY,XZ XYZ。(2)A5(分解性,Decomposition):XY,Z

8、Y XZ。(3)A6(伪传递性):XY,WYZ WXZ。(4)A7(复合性,Composition):XY,WZ XWYZ。(5)A8 XY,W Z X(WY)YZ。,2022/10/14,13,4.2.3 FD的推理规则(三),例4.5 已知关系模式R(ABC),F=AB,BC,求F+。根据FD的推理规则,可推出F的F+有43个FD。例如,据规则A1可推出A(表示空属性集),AA,。据已知的AB及规则A2可推出ACBC,ABB,AAB,。据已知条件及规则A3可推出AC等。有兴趣的同学可推出这43个FD。,2022/10/14,14,4.2.3 FD的推理规则(四),定义4.4 对于FD XY

9、,如果YX,那么称XY是一个“平凡的FD”,否则称为“非平凡的FD”。定理4.3 如果A1An是关系模式R的属性集,那么XA1An成立的充分必要条件是XAi(i=1,n)成立。,2022/10/14,15,4.2.4 FD和关键码的联系,定义4.5 设关系模式R的属性集是U,X是U的一个子集。如果XU在R上成立,那么称X是R的一个超键。如果XU在R上成立,但对于X的任一真子集X1都有X1U不成立,那么称X是R上的一个候选键。本章的键都是指候选键。例4.6 在学生选课、教师任课的关系模式中:R(S#,SNAME,C#,GRADE,CNAME,TNAME,TAGE)如果规定:每个学生每学一门课只有

10、一个成绩;每个学生只有一个姓名;每个课程号只有一个课程名;每门课程只有一个任课教师。根据这些规则,可以知道(S#,C#)能函数决定R的全部属性,并且是一个候选键。虽然(S#,SNAME,C#,TNAME)也能函数决定R的全部属性,但相比之下,只能说是一个超键,而不能说是候选键,因为其中含有多余属性。,2022/10/14,16,4.2.5 属性集的闭包,定义4.6 设F是属性集U上的FD集,X是U的子集,那么(相对于F)属性集X的闭包用X+表示,它是一个从F集使用FD推理规则推出的所有满足XA的属性A的集合:X+=属性A|XA在F+中 定理4.4 XY能用FD推理规则推出的充分必要条件是YX+

11、。例4.7 属性集U为ABCD,FD集为 AB,BC,DB。则用上述算法,可求出A+=ABC,(AD)+=ABCD,(BD)+=BCD,等等。,2022/10/14,17,4.2.5 FD推理规则的完备性,推理规则的正确性是指“从FD集F使用推理规则集推出的FD必定在F+中”,完备性是指“F+中的FD都能从F集使用推理规则集导出”。也就是正确性保证了推出的所有FD是正确的,完备性保证了可以推出所有被蕴涵的FD。这就保证了推导的有效性和可靠性。定理4.5 FD推理规则A1,A2,A3是完备的。,2022/10/14,18,4.2.6 FD集的最小依赖集(一),定义4.7 如果关系模式R(U)上的

12、两个函数依赖集F和G,有F+=G+,则称F和G是等价的函数依赖集。定义4.8 设F是属性集U上的FD集。如果Fmin是F的一个最小依赖集,那么Fmin应满足下列四个条件:F+min=F+;每个FD的右边都是单属性;Fmin中没有冗余的FD(即F中不存在这样的函数依赖XY,使得F与F XY 等价);每个FD的左边没有冗余的属性(即F中不存在这样的函数依赖XY,X有真子集W使得F XY WY 与F等价)。,2022/10/14,19,4.2.6 FD集的最小依赖集(二),例4.8 设F是关系模式R(ABC)的FD集,F=ABC,BC,AB,ABC,试求Fmin。先把F中的FD写成右边是单属性形式:

13、F=AB,AC,BC,AB,ABC 显然多了一个AB,可删去。得F=AB,AC,BC,ABC F中AC可从AB和BC推出,因此AC是冗余的,可删去。得F=AB,BC,ABC F中ABC可从AB和BC推出,因此ABC也可删去。最后得F=AB,BC,即所求的Fmin。,2022/10/14,20,4.3关系模式的分解4.3.1 模式分解问题(一),定义4.9 设有关系模式R(U),属性集为U,R1、Rk都是U的子集,并且有R1R2RkU。关系模式R1、Rk的集合用表示,=R1,Rk。用代替R的过程称为关系模式的分解。这里称为R的一个分解,也称为数据库模式。,2022/10/14,21,4.3.1

14、模式分解问题(二),图4.5 模式分解示意图,2022/10/14,22,4.3.2 无损分解(一),例4.9,r,C,C,4,3,4,3,2022/10/14,23,4.3.2 无损分解(二),定义4.10 设R是一个关系模式,F是R上的一个FD集。R分解成数据库模式=R1,Rk。如果对R中满足F的每一个关系r,都有 r=R1(r)R2(r)Rk(r)那么称分解相对于F是“无损联接分解”(lossless join decomposition),简称为“无损分解”,否则称为“损失分解”(lossy decomposition)。,2022/10/14,24,4.3.2 无损分解(三),定理4

15、.6 设=R1,Rk 是关系模式R的一个分解,r是R的任一关系,ri=Ri(r)(1ik),那么有下列性质:rm(r);若s=m(r),则Ri(s)=ri;m(m(r)=m(r),这个性质称为幂等性(Idempotent)。,2022/10/14,25,4.3.2 无损分解(四),R,=,R,1,,,R,2,,,,,R,k,r,r,1,,,r,2,,,,,r,k,s,s,1,,,s,2,,,,,s,k,图中:,r,i,=,Ri,(,r,)(,1,i,k,),s,i,=,Ri,(,r,)(,1,i,k,),据性质,1.,有,r,m,(,r,),据性质,2.,有,s,i,=,r,i,(,1,i,k

16、,),图4.8 r的投影连接变换示意图,2022/10/14,26,4.3.2 无损分解(五),图4.9 泛关系假设下的示意图,图4.9 泛关系假设时的示意图,2022/10/14,27,4.3.2 无损分解(六),例4.10 设关系模式R(ABC)分解成=AB,BC。(a)和(b)分别是模式AB和BC上的值r1和r2,(c)是r1 r2的值。显然BC(r1 r2)r2。这里r2中元组(b2c2)就是一个悬挂元组,由于它的存在,使得r1和r2不存在泛关系r。,r,2022/10/14,28,4.3.3 无损分解的测试方法(一),算法4.3 无损分解的测试构造一张k行n列的表格,每列对应一个属性Aj(1jn),每行对应一个模式Ri(1ik)。如果Aj在Ri中,那么在表格的第i行第j列处填上符号aj,否则填上bij。把表格看成模式R的一个关系,反复检查F中每个FD在表格中是否成立,若不成立,则修改表格中的值。修改方法如下:对于F中一个FD XY,如果表格中有两行在X值上相等,在Y值上不相等,那么把这两行在Y值上也改成相等的值。如果Y值中有一个是aj,那么另一个也改成aj;如果没有aj,那么

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1