《数据库的规范化理论与数据.ppt》由会员分享,可在线阅读,更多相关《数据库的规范化理论与数据.ppt(84页珍藏版)》请在三一办公上搜索。
1、三级数据库技术,第7章 关系数据库的规范化理论与数据库设计,2,本部分占总分的8%主要内容:规范化理论概述函数依赖关系模式分解数据库设计过程,3,了解关系模式设计的常见问题及应对措施,是学习本章的前提和基础函数依赖定义、逻辑蕴含、码、armstrong公理、常用范式和关系模式分解方法考试重点函数依赖、关系模式规范化程度和模式分析等价标准是重中之重,4,学习本章的目的:针对具体应用,数据要存储,需要什么样的关系模式,解决关系数据库的逻辑设计问题(如何建表)要建合适的表,需要学习规范化理论,7.1 关系模式中的常见问题,6,考点1 关系模式设计的常见问题,已知数据库要存储 教师的姓名和地址,还要存
2、储教师教的课程号和课程设计的关系模式:T(TNAME,ADDRESS,CNO,CNAME)其中,TNAME-教师姓名,ADDRESS-教师地址,CNO-任教课程号,CNAME-课程名称。一个教师可以教多门课程,7,该关系模式可能出现如下问题:数据冗余更新异常(多个记录更新,容易产生数据不一致)插入异常:TNAME,CNO码,某个教师没上课,CNO为空,不能插入)删除异常:某个教师课程全部删除,教师的地址姓名信息全部删除,如何设计一个好的关系模式,需要学习规范化理论,8,考题,1、下列哪一条不是由于关系模式设计不当所引起的问题?A)数据冗余 B)插入异常 C)更新异常 D)丢失修改 D 2009
3、.032、由于关系模式设计不当所引起的插入异常指的是A、两个事务并发地对同一关系进行插入而造成数据库不一致B、由于码值的一部分为空而不能将有用的信息作为一个元组插入到关系中C、没经授权的用户对关系进行插入D、插入操作因为违反完整性约束条件而遭到拒绝B 2008.09 2005.09,9,3、下列哪些条是由于关系模式设计不当引起的问题?I、数据冗余 II、插入异常 III、删除异常IV、丢失修改 V 级联回滚A、仅II和III B、仅I、II和III C、仅I、IV和V D、仅II、III和IVB 2008.044、由于关系模式设计不当所引起的更新异常指的是A、两个事务并发地对同一个数据项进行更
4、新而造成数据库不一致B、关系的不同元组中数据冗余,更新时未能同时更新有关元组而造成数据库不一致C、未经授权的用户对数据进行了更新D、对数据的更新因为违反完整性约束条件而遭到拒绝B 2007.09,10,下列关于规范化理论的叙述中,哪一条是不正确的?A)规范化理论是数据库设计的理论基础 B)规范化理论最主要的应用是在数据库概念结构设计阶段 C)规范化理论最主要的应用是在数据库逻辑结构设计阶段 D)在数据库设计中,有时候会降低规范化程度而追求高查询性能B 2009.04,2008.09,11,考点2 函数依赖,例 在关系模式R(SNO,NAME,AGE)中,根据语义 一个SNO值对应一个AGE值,
5、不可能出现一个SNO值对应两个AGE值,我们称 SNO函数决定AGE,写作SNO-AGE或AGE函数依赖于SNO 如果一个AGE对应一个SNO,但我们决不能认为AGE函数决定SNO,因为它不符合语义,12,函数依赖定义 设R(U)是属性集U上的一个关系模式,X和Y均为U的子集。若对于R(U)的任一个可能的关系r,r中不可能有两个元组在X中的属性值相等,而在Y中的属性值不等,那么称X函数决定Y XY,或Y函数依赖于X X为决定因素,13,一、函数依赖,例如:学生(Sno,Sname,Sdept,Sage),由于在所有的元组中,Sno都是唯一的,因此,Sno函数确定Sname 和 Sdept。,如
6、果规定Sname不能重复,那么在所有的元组中Sname也都是唯一的,可以说,Sname函数确定Sdept,或者说,Sdept函数依赖于Sname 记作:Sname Sdept,或者说,Sname 和 Sdept函数依赖于Sno,Sno Sname,Sno Sdept,14,几个术语和符号,如果 XY,则 X 叫做决定因素(Determinant),如果 XY,Y X,则记作:X Y,如果Y不函数依赖于X,则记作:XY,15,二、平凡函数依赖与非平凡函数依赖,如果 XY,但 Y X,则称 XY 是非平凡的函数依赖,如果 XY,但 Y X,则称 XY 是平凡的函数依赖,例:在关系 SC(Sno,C
7、no,Grade)中,,非平凡函数依赖:(Sno,Cno)Grade,平凡函数依赖:(Sno,Cno)Sno,(Sno,Cno)Cno,16,三、完全函数依赖与部分函数依赖,定义5.2 在关系模式 R(U)中,如果XY,并且对于 X 的任何一个真子集X,都有 X Y,则称 Y 完全函数依赖于 X,记作:X F Y 若XY,但Y不完全函数依赖于X,则称 Y 部分函数依赖于X,记作:X P Y,17,三、完全函数依赖与部分函数依赖,例:在关系 SC(Sno,Cno,Grade)中,用X 表示(Sno,Cno),用Y 表示 Grade,那么,(Sno,Cno)Grade但是 Sno Grade,Cn
8、o Grade,因此(Sno,Cno)F Grade,18,四、传递函数依赖,定义5.3 在关系模式R(U)中,如果XY,YZ,且Y X,YX,则称 Z 传递函数依赖于X。注:如果YX,即 XY,则称Z 直接函数依赖于X。例:在关系 Std(Sno,Sdept,Mname)中,有:Sno Sdept,Sdept Mname Mname 传递函数依赖于Sno,19,五、函数依赖的逻辑蕴含,设R是一个关系模式,X,Y是U中属性组,F是函数依赖集,若在R的任何一个满足F中函数依赖的关系r上,都有函数依赖X-Y成立,则称F逻辑蕴含X-Y(F推导出X-Y)例如 关系模式S(SNO,NAME,AGE,DN
9、O,DEAN),其属性组上的函数依赖集为 F=SNO-NAME,SNO-AGE,SNO-DNO,DNO-DEAN SNO-DEAN就是F所逻辑蕴含(推导出)的一个函数依赖在关系模式R中为F所逻辑蕴含的函数依赖全体称为F闭包,F+,20,码,定义 设 K 为关系模式 R中的属性或属性组合。若 K U,并且不存在K的真子集决定U,则 K 称为 R 的一个侯选码(Candidate Key)。若关系模式 R 有多个候选码,则选定其中的一个做为主码(Primary key)。主属性与非主属性全码(ALL KEY):主码为关系模式所有属性,21,例:关系模式CSZ(CITY,ST,ZIP)其属性组上的函
10、数依赖为 F=(CITY,ST)-ZIP,ZIP-CITY 推导后(CITY,ST)和(ST,ZIP)为候选码,所以CITY,ST,ZIP都是主属性,22,Armstrong公理系统(推理规则),设F是属性组U上的一组函数依赖,有如下推理规则自反律:若Y X U,则X-Y为F逻辑蕴含(推导出)增广律:若X-Y为F逻辑蕴含,且Z U,则XZ-YZ为F逻辑蕴含传递律:若X-Y及Y-Z为F所逻辑蕴含,则X-Z为F所逻辑蕴含,23,例:关系模式CSZ(CITY,ST,ZIP)其属性组上的函数依赖为 F=(CITY,ST)-ZIP,ZIP-CITY证明(ST,ZIP)是候选码 1、ZIP-CITY F中
11、已知 2、(ST,ZIP)-(ST,CITY)增广律 3、(ST,ZIP)-(ST,CITY,ZIP)增广律,24,Armstrong的推论,合并规则:X-Y,Y-Z,则X-YZ伪传递规则:X-Y,WY-Z,则XW-Z分解规则:X-Y,Z Y,则X-Z关系模式码的确定1、找出F集合的所有决定因素,即-左边属性,组合为U12、从U1中找出最小属性组K,使K-U则K为候选码,再找出其他候选码,25,考题,1、下列哪一条不属于Armstrong公理系统中的基本推理规则?A、若Y X,则X-YB、若X-Y,则XZ-YZC、若X-Y,且Z Y,则X-ZD、若X-Y,且Y-Z,则X-ZA 自反律 B 增广
12、律 C分解律 D 传递律C 2009.03,26,2、Armstrong公理系统中的增广律的含义:设R是一个关系模式,X,Y是U中属性组,若X-Y为F所逻辑蕴含,且Z U,则【1】为F所逻辑蕴含XZ-ZY 2008.093、下列关于部分函数依赖的叙述中,哪条是正确的?A、若X-Y,且存在Y的真子集Y,X-Y,则Y对X部分函数依赖B、若X-Y,且存在Y的真子集Y,X-Y,则Y对X部分函数依赖C、若X-Y,且存在X的真子集X,X-Y,则Y对X部分函数依赖D、若X-Y,且存在X的真子集X,X-Y,则Y对X部分函数依赖C 2007.09,27,3、设有关系模式R(B,C,M,T,A,G),根据语义有如
13、下函数依赖集:F=B-C,(M,T)-B,(M,C)-T,(M,A)-T,(A,B)-G,关系模式R的码是【1】(1)取出函数依赖的左部,B,M,T,C,A(2)找出最小组合决定其他属性,M,A,28,4、下列关于函数依赖的叙述中,哪一条是不正确的?A、若X-Y,Y-Z,则X-ZB、若X-Y,YY,则X-YC、若X-Y,XX,则X-YD、若XX,则X-XA 传递 B 分解 D 自反律C 2007.045、下列关于关系模式的码和外码的叙述中,哪些是正确的I 主码可以是单个属性,也可以是属性组II 外码可以是单个属性,也可以是属性组III 一个关系模式的主码与该关系模式的任何一个外码的交一定为空I
14、V 一个关系模式的主码与该关系模式的所有外码的并一定包含了该关系模式的所有属性A)I和II B)I、II和III C)I、II和IV D)I、III和IVA,29,6、下列关于关系模式的码的叙述中,哪一项是不正确的?A)当候选码多于一个时,选定其中一个作为主码B)主码可以是单个属性,也可以是属性组C)不包含在主码中的属性称为非主属性D)若一个关系模式中的所有属性构成码,则称为全码C 不包含在任何码中的属性,30,考点3 1NF、2NF,3NF,BCNF,关系模式的规范化:解决插入、删除和更新异常,尽量消除数据冗余,消除不合适的数据依赖 这就要求关系模式应该满足一定的条件 关系模式满足不同的条件
15、,称为不同的范式,31,1NF范式 如果关系模式R的所有属性都是不可再分解的,则称R属于第一范式,简称1NF,记做R1NF。满足1NF的关系为规范化的关系,否则为非规范化的关系1NF的模式是关系数据库的最基本要求,不是理想的模式,可能存在部分函数依赖,存在冗余和更新异常,32,例如:学生关系S(学号,姓名,成绩),其中属性成绩又分为英语、数学和语文三个数据项,由于存在属性再分,所以关系模式S不是1NF,即S1NF例题:下列关于1NF的叙述中,哪条不正确A、满足1NF中的关系可以包含复合属性B、满足1NF中的关系不可以包含复合属性C、满足1NF的关系称为规范化关系,否则称为非规范化关系D、不满足
16、1NF的数据库模式不能称为关系数据库A,33,2NF 关系模式R1NF,且每个非主属性完全依赖于码,则称R属于2NF判断关系是否属于2NF关系SC(Sno,Cno,Grade,Sdept)F=(Sno,Cno)-Grade,Sno-Sdept判断步骤(1):找出所有候选码,SC只有一个候选码(Sno,Cno)(2)确定非主属性,Grade,Sdept是关系SC的非主属性(3)看非主属性对码的函数依赖情况:Grade完全依赖码,Sdept依赖于Sno,部分依赖码,所以SC不是2NF如何变为2NF,分为两个表,SG(Sno,Cno,Grad)和S(Sno,Sdept),34,例题 判断关系S是否属
17、于2NF范式 S(SNO,NAME,AGE,DNO,DEAN)F=SNO-NAME,SNO-AGE,SNO-DNO,DNO-DEAN)(1)找所有候选码:F的左部(SNO,DNO),码为最小的属性集,SNO决定其他所有属性,所以SNO为码(2)显然非主属性完全依赖SNO,所以S属于2NF但关系S由于存在传递依赖,仍然存在冗余、更新,插入和删除异常如何消除传递依赖,关系分解SI(SNO,NAME,AGE,DNO)DEPT(DNO,DEAN)变为3NF,35,3NF 若关系模式R2NF,并且每个非主属性都不传递依赖于码,则称R属于3NF 每个非主属性既不部分依赖码也不传递依赖码 不存在非主属性依赖
18、于非主属性,36,考题,1、有关系模式P(C,S,T,R,G),根据语义F=C-T,ST-R,TR-C,SC-G 关系模式P的规范化程度最高达到()2004.9A、1NF B、2NF C、3NF D、BCNF)候选码:F每个函数依赖左部集合(C,S,T,R)(ST)为码(SC为码)不存在部分依赖和传递依赖,所以是3NF,不是BCNF2、设有关系模式R(A,B,C),根据语义有如下函数依赖F=A-B,(B,C)-A),关系模式R的规范化程度最高达到()2006.4A、1NF B、2NF C、3NF D、4NF码为(B,C),(A,C),不存在非主属性,所以最高为3NF,4NF为多值依赖,37,B
19、CNF 若关系模式R1NF,且对于每个非平凡函数依赖X-Y,X必须包含码,则R属于BCNF 其中Y不一定是非主属性判断BCNF,只要决定因素包含码就可以了一个关系只有两个属性,必定为BCNF范式在函数依赖中,BCNF达到最高规范化程度,38,例 CSZ(CITY,ST,ZIP)F=(CITY,ST)-ZIP,ZIP-CITYCSZ是否属于BCNF(1)找码:F的左部(CITY,ST,ZIP),两两组合(CITY,ST),(CITY,ZIP),(ST,ZIP),显示(CITY,ST)和(ST,ZIP)为码,没有主属性所以CSZ至少为3NF由于ZIP-CITY,决定因素不包含码,所以不属于BCNF
20、,39,考题,1、有关系模式P(C,S,T,R),根据语义有如下函数依赖集,F=C-T,ST-R,TR-C(1)关系模式P的规范化程度最高达到 2008.09A、1NF B、2NF C、3NF D、BCNF分析:找码 F左部(C,S,T,R)码为(S,T)(S,C),非主属性 R3NF(2)现将关系模式P分解为两个关系模式P1(C,T,R),P2(C,S),那么这个分解A、不具有无损连接性,不保持函数依赖B、具有无损连接性,不保持函数依赖C、不具有无损连接性,保持函数依赖D、具有无损连接性,且保持函数依赖,40,2、有关系模式R(S,T,C,D,G),根据语义有如下函数依赖集,F=(S,C)-
21、T,C-D,(S,C)-G,T-C 2008.04(1)关系模式R的候选码 A、只有1个,为(S,C)B、只有1个,为(S,T)C、有2个,为(S,C)和(S,T)D、有2个,为(S,C)和T分析:找码,F的左部(S,C,T),左部最小组合确定码,S,C,单个属性不为码,两个属性组合(S,C)为码,(S,T)为码C(2)关系模式规范化程度最高达到A、1NF B、2NF C、3NF D、BCNF由于C-D,非主属性局部依赖码,所以为1NF,41,3、有关系模式P(A,B,C,D,E,F,G,H,I,J)F=ABD-E,AB-G,B-F,C-J,C-I,G-H关系模式P的码是A)(A,B,C)B(
22、A,B,D)C)(A,C,D,G)D(A,B,C,D)分析:F的左部(ABCDG)根据答案,(A,B,C),(A,B,D)和(A,C,D,G)都不能决定其他属性,只有(A,B,C,D)才能决定其他属性D(56)关系模式P的规范化程度最高达到A)1NF B)2NFC)3NF D)BCNF存在非主属性部分依赖码A,42,考点4 多值依赖和4NF,43,多值依赖与第四范式(4NF),例:学校中某一门课程由多个教师讲授,他们使用相同的一套参考书。关系模式Teaching(C,T,B)课程C、教师T 和 参考书B,44,45,用二维表表示Teaching,46,多值依赖与第四范式(续),Teaching
23、BCNF:Teach具有唯一候选码(C,T,B),即全码Teaching模式中存在的问题(1)数据冗余度大:有多少名任课教师,参考书就要存储多少次,47,一、多值依赖,设R(U)是一个属性集U上的一个关系模式,X、Y和Z是U的子集,并且ZUXY,多值依赖 XY成立当且仅当对R的任一关系r,r在(X,Z)上的每个值对应一组Y的值,这组值仅仅决定于X值而与Z值无关 例 Teaching(C,T,B)对于C的每一个值,T有一组值与之对应,而不论B取何值,48,多值依赖(续),平凡多值依赖和非平凡的多值依赖若XY,而Z,则称 XY为平凡的多值依赖否则称XY为非平凡的多值依赖,49,多值依赖的性质,(1
24、)多值依赖具有对称性 若XY,则XZ,其中ZUXY 多值依赖的对称性可以用完全二分图直观地表示出来。(2)多值依赖具有传递性 若XY,YZ,则XZ-Y,50,多值依赖(续),(3)函数依赖是多值依赖的特殊情况。若XY,则XY。(4)若XY,XZ,则XY Z。(5)若XY,XZ,则XYZ。(6)若XY,XZ,则XY-Z,XZ-Y。,51,多值依赖与函数依赖的区别,(1)有效性多值依赖的有效性与属性集的范围有关若XY在U上成立,则在W(X Y W U)上一定成立;反之则不然,即XY在W(W U)上成立,在U上并不一定成立多值依赖的定义中不仅涉及属性组 X和 Y,而且涉及U中其余属性Z。一般地,在R
25、(U)上若有XY在W(W U)上成立,则称XY为R(U)的嵌入型多值依赖,52,多值依赖与函数依赖的区别,只要在R(U)的任何一个关系r中,元组在X和Y上的值满足定义函数依赖,则函数依赖XY在任何属性集W(X Y W U)上成立。,53,多值依赖(续),(2)若函数依赖XY在R(U)上成立,则对于任何Y Y均有XY 成立多值依赖XY若在R(U)上成立,不能断言对于任何Y Y有XY 成立,54,第四范式(4NF),关系模式R1NF,如果对于R的每个非平凡多值依赖XY(Y X),X都含有候选码,则R4NF。(XY)如果R 4NF,则R BCNF 不允许有非平凡且非函数依赖的多值依赖 允许的是函数依
26、赖(是非平凡多值依赖),注意 4NF针对多值依赖,55,第四范式(续),例:Teach(C,T,B)4NF 存在非平凡的多值依赖CT,且C不是候选码用投影分解法把Teach分解为如下两个关系模式:CT(C,T)4NF CB(C,B)4NF CT,CB是平凡多值依赖,56,考题,1、若关系模式R中只包含两个属性,则 A)R肯定属于2NF,但R不一定属于3NF B)R肯定属于3NF,但R不一定属于BCNF C)R肯定属于BCNF,但R不一定属于4NF D)R肯定属于4NFC4NF为多值依赖2、下列关于函数依赖和多值依赖的叙述中,哪些是不正确的?I.若XY,则XY II.若XY,则X Y III.若
27、Y X,则XY IV.若Y X,则XY V.若XY,Y Y,则XY VI.若XY,Y Y,则XY A)仅II、IV和V B)仅I、III和IV C)仅II 和VI D)仅IV和VI 2009.03 2008.09分析:X-Y是X Y的特例 Y X,则XY,则XY若XY,Y Y,则不能推出XYC,57,3、设U是所有属性的集合,X,Y,Z都是U的子集,且Z=U-X-Y.下列关于多值依赖的叙述中,哪一条是不正确的?A、若XY,则XZB、若XY,则XYC、若XY,且Y Y,则X YD、若Z=,则X YC(A对称关系 B特例 D平凡多值依赖 2008.09,58,4、如果关系模式R的属性之间不存在非平
28、凡且非函数依赖的多值依赖,对R的规范化程度达到【1】2008.044NF5、设U为所有属性,X,Y,Z为属性集,Z=U-X-Y,下列关于平凡多值依赖的叙述中,哪条是正确的?A、若X Y,Z=,则称X Y为平凡多值依赖B、若X Y,Z=,则称X Y为平凡多值依赖C、若X Y,X Y,则X Y为平凡的多值依赖D、若X Y,X Z,则称X Y为平凡的多值依赖A 2007.09,59,6、下列关于关系模式规范化的叙述中,哪条不正确?A、若R4NF,则必然有R3NF B、若R3NF,则必然R 2NF C、若R2NF,则必然有R 1NF D、若R 1NF,则必然有R BCNF D 2007、09,60,考
29、点5 关系模式分解,在关系模式规范化过程中,需要对关系模式进行分解,要求分解后的模式与原模式等价常用的等价标准有要求分解具有无损连接性的和分解是保持函数依赖的两种,61,无损连接标准设关系模式R分解为关系模式R1,R2,Rn,若对于R的任何一个可能r,都有r=r1*r2*rn,即r在R1,R2,Rn上的投影的自然连接等于r,则称关系R的分解具有无损连接性的简单的说,就是分解的关系的自然连接等于原关系,62,保存函数依赖标准设关系模式R分解为关系模式R1,R2,Rn,若对于F+=F1F2 Fn+,则关系R的这个分解为保持函数依赖的简单的说,原关系F蕴含的所有函数依赖等于分解后关系蕴含的所有函数依
30、赖,63,掌握关系模式分析的几个事实关系模式可以具有无损连接,可能保持函数依赖,也可能既有无损连接又保持函数依赖(1)若要求分解具有无损连接性,那么模式分解一定可以达到BCNF(2)若要求分解保持函数依赖,那么模式分解可以达到3NF,但不一定达到BCNF(3)若要求分解既具有无损连接性,又保持函数依赖,则模式分解可以达到3NF,不一定达到BCNF,64,考题,1、下列关于模式分解的叙述中,哪一(些)条是正确的?I.若一个模式分解具有无损连接性,则该分解一定保持函数依赖 II.若一个模式分解保持函数依赖,则该分解一定具有无损连接性 III.模式分解可以做到既具有无损连接性,又保持函数依赖 IV.
31、模式分解不可能做到既具有无损连接性,又保持函数依赖 A)仅I和III B)仅II和IV C)仅III D)仅IV C 2009.03,65,考题,1、有关系模式P(C,S,T,R),根据语义有如下函数依赖集,F=C-T,ST-R,TR-C现将关系模式P分解为两个关系模式P1(C,T,R),P2(C,S),那么这个分解A、不具有无损连接性,不保持函数依赖B、具有无损连接性,不保持函数依赖C、不具有无损连接性,保持函数依赖D、具有无损连接性,且保持函数依赖,不具有无损连接,不保持函数依赖,ST-R,66,2、下列关于模式分解的叙述中,哪一条是不正确的?A)若一个模式分解保持函数依赖,则该分解一定具
32、有无损连接性B)若要求分解保持函数依赖,那么模式分解可以达到3NF,但不一定能达到BCNFC)若要求分解既具有无损连接性,又保持函数依赖,则模式分解可以达到3NF,但不一定能达到BCNFD)若要求分解具有无损连接性,那么模式分解一定可以达到BCNFA3、关系模式 分解的等价性标准主要有两个,分别为分解具有【1】和分解保持函数依赖。无损连接,67,将关系模式R分解为关系模式R1,R2,Rn,若对于R的任何一个可能r,都有r=r1*r2*rn,即r在R1,R2,Rn上的投影的自然连接等于r,则称关系R的分解【1】具有无损连接性 2007.09,68,考点6 数据库分析与设计,数据库设计的6个阶段:
33、需求阶段(信息需求和处理需求 DFD数据流图)概念结构阶段(E-R图的建立)逻辑结构设计 物理结构设计 数据库实施和运行维护,69,ren,概念结构阶段 E-R方法的步骤(1)设计局部E-R图(2)设计全局E-R图 解决属性冲突、结构冲突、命名冲突(3)E-R图的优化,70,逻辑结构设计 E-R模型向关系模型转换(1)实体转换为关系,属性转换为关系的属性,实体码转换为关系的码(2)1:1的联系,可以转换为一个关系,也可以与联系的任意一端实体关系模式合并(3)1:n的联系可以转换为一个独立关系(码为n端实体码),也可以与联系的n端实体关系模式合并(加入1端实体码)(4)m:n联系转换为一个关系模
34、式(码为各实体码组合)(5)3个或3个以上的多元联系转换为一个关系模式,模式的码由联系的实体码组成,71,E-R图向关系模型转换,转换原则,实体型的属性-关系的属性实体型的码-关系的码,学生实体可以转换为如下关系模式:学生(学号,姓名,性别,年龄,所在系),一个实体型转换为一个关系模式,课程实体可以转换为如下关系模式:课程(课程号,课程名,先修课,学分),72,E-R图向关系模型的转换,一个 m:n 联系转换为一个关系模式。关系的属性:与该联系相连的各实体的码以及联系本身的属性关系的码:各实体码的组合,例,“选课”联系是一个m:n联系,可以将它转换为如下关系模式,其中学号与课程号为关系的组合码
35、:选课(学号,课程号,成绩),73,E-R图向关系模型的转换,一个 1:n 联系转化为关系模式时有2种方法 1)可以转换为一个独立的关系模式:关系的属性:与该联系相连的各实体的码以及联系本身的属性关系的码:n 端实体的码2)可以与n 端对应的关系模式合并合并后关系的属性:在n端关系属性中加入1端关系的码和联系本身的属性合并后的码:n 端实体的码,74,1:N 联系转换实例,某大学管理系统中的实体“系”和“教师”之间存在着 1:N 的联系,其E-R图如图:,75,1:N 联系转换实例,系实体(1端)的关系模式:系(系编号,系名,电话,系主任),教师实体(N端)的关系模式:教师(教师编号,姓名,性
36、别,年龄,职称),将聘用(1:N联系)转换为一个独立的关系模式:聘用(教师编号,系编号,聘用日期),将聘用与N端(教师实体)关系模式合并:教师(教师编号,姓名,性别,年龄,职称,系编号,聘用日期),76,E-R图向关系模型的转换,4.一个 1:1 联系转化为关系模式时有2种方法 1)可以转换为一个独立的关系模式:关系的属性:与该联系相连的各实体的码以及联系本身的属性关系的码:每个实体的码都是该关系的候选码2)可以与任意一端对应的关系模式合并合并后关系的属性:在合并端关系属性中加入另一端关系的码和联系本身的属性合并后的码:每个实体的码都是该关系的候选码,77,1:1 联系转换实例,某大学管理系统
37、中的实体“院长”和“学院”之间存在着 1:1 的联系,其E-R图如图:,78,1:1 联系转换实例,学院实体的关系模式:学院(学院编号,学院名,电话,地址),院长实体的关系模式:院长(院长名,性别,年龄,职称),将任职(1:1联系)转化为一个独立的关系模式:任职(学院编号,院长名,任职日期),将任职与学院或院长实体的关系模式合并:学院(学院编号,学院名,电话,地址,院长名,任职日期)院长(院长名,性别,年龄,职称,学院编号,任职日期),79,物理设计 存储记录格式 存储方法设计 存取方法设计,80,数据库的实施 建立数据库结构 装入数据测试 装入实际数据数据库运行和维护运行和维护由DBA负责:
38、数据的转储,安全性和完整性控制,性能监督和重组织和重构,81,规范化理论是数据库设计的理论基础,可以应用到数据库设计的不同阶段,82,考题,1、存取方法设计是数据库设计中【1】结构设计阶段的任务 2009.03物理设计2、下列关干E-R模型向关系模型转换的叙述中,哪一条是不正确的?A)一个实体类型转换成一个关系模式,关系的码就是实体的码 B)一个1:n联系转换为一个关系模式,关系的码是I:n联系的1端实体的码 C)一个m:n联系转换为一个关系模式,关系的码为各实体码的组合 D)三个或三个以上实体间的多元联系转换为一个关系模式,关系的码为各实体码的组合 B 为n端实体的码,83,3、从E-R模型
39、到关系模式的转换是数据库设计的哪各阶段任务?2008.04 A、需求分析 B、概念设计 C、逻辑结构设计 D、物理结构设计C4、下列关于E-R模型向关系模型转换叙述中,哪一条不正确?A、一个实体类型转换为一个关系模式B、一个M:N联系转换为一个关系模式C、一个1:1联系可以转换为一个独立的关系模式,也可以与联系的任意一端实体所对应的关系模式合并D、一个1:N联系可以转换为一个独立的关系模式,也可以与联系的任意一端实体所对应的关系模式合并D,84,5、下列哪条不是局部E-R图集成为全局E-R图可能存在的冲突?2007.09A、模型冲突 B、结构冲突 C、属性冲突D、命名冲突A6、在将E-R模型向关系模型转换的过程中,若将三个实体之间的多元联系转换为一个关系模式,则该关系模式的码为A)其中任意两个实体的码的组合B)其中任意一个实体的码C)三个实体的码的组合D)三个实体的其他属性的组合C,