数据库管理第三章.ppt

上传人:hwp****526 文档编号:84369050 上传时间:2023-04-05 格式:PPT 页数:53 大小:195.50KB
返回 下载 相关 举报
数据库管理第三章.ppt_第1页
第1页 / 共53页
数据库管理第三章.ppt_第2页
第2页 / 共53页
点击查看更多>>
资源描述

《数据库管理第三章.ppt》由会员分享,可在线阅读,更多相关《数据库管理第三章.ppt(53页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、 第三章 关系数据库设计理论一、规范化问题二、函数依赖三、关系范式1 1数据库系统基础数据库系统基础3.1规范化问题 数据库是一组相关数据的集合。它不仅包括数据本身,而且包括关于数据之间的联系,即数据模型。给出一组数据,如何构造一个适合的数据模型,在关系数据库中应该组织成几个关系模式,每个关系模式包括哪些属性。这是数据库逻辑设计要解决的问题。2 2数据库系统基础数据库系统基础关系数据库设计理论主要包括三方面的内容:数据依赖,范式,模式设计方法。不恰当的关系模式会存在如下问题:数据冗余;更新异常;插入异常;删除异常。3 3数据库系统基础数据库系统基础例:设教师任课的关系模式例:设教师任课的关系模

2、式l教师任课(职工号、姓名、职称、教师任课(职工号、姓名、职称、住址、系号、系名、系址、课程号、住址、系号、系名、系址、课程号、课程名、教学水平、学分)课程名、教学水平、学分)l详细内容看下表(关系):详细内容看下表(关系):4 4数据库系统基础数据库系统基础职职职职工工工工号号号号姓名姓名姓名姓名职称职称职称职称住住住住址址址址系系系系号号号号系名系名系名系名系系系系址址址址课课课课程程程程号号号号课课课课程程程程名名名名水水水水平平平平学学学学分分分分01010101 马明马明马明马明教授教授教授教授A1A1A1A1D1D1D1D1 信息信息信息信息L1L1L1L1C1C1C1C1C C

3、C C良良良良 3 3 3 301010101 马明马明马明马明教授教授教授教授A1A1A1A1D1D1D1D1 信息信息信息信息L1L1L1L1C2C2C2C2OSOSOSOS优优优优 3 3 3 301010101 马明马明马明马明教授教授教授教授A1A1A1A1D1D1D1D1 信息信息信息信息L1L1L1L1C3C3C3C3DBDBDBDBOKOKOKOK 4 4 4 402020202 李露李露李露李露讲师讲师讲师讲师A2A2A2A2D1D1D1D1 信息信息信息信息L1L1L1L1C3C3C3C3DBDBDBDB良良良良 4 4 4 402020202 李露李露李露李露讲师讲师讲师

4、讲师A2A2A2A2D1D1D1D1 信息信息信息信息L1L1L1L1C4C4C4C4VFVFVFVF良良良良 4 4 4 403030303 陈伟陈伟陈伟陈伟教授教授教授教授A3A3A3A3D1D1D1D1 信息信息信息信息L1L1L1L1C4C4C4C4VFVFVFVFOKOKOKOK 4 4 4 403030303 陈伟陈伟陈伟陈伟教授教授教授教授A3A3A3A3D1D1D1D1 信息信息信息信息L1L1L1L1C1C1C1C1C C C COKOKOKOK 3 3 3 303030303 陈伟陈伟陈伟陈伟教授教授教授教授A3A3A3A3D1D1D1D1 信息信息信息信息L1L1L1L1

5、C5C5C5C5MAMAMAMA优优优优 2 2 2 204040404 周浩周浩周浩周浩讲师讲师讲师讲师A4A4A4A4D2D2D2D2 化工化工化工化工L2 L2 L2 L2 C6C6C6C6PAPAPAPA良良良良 3 3 3 35 5数据库系统基础数据库系统基础l这张表中,只有根据教师号和课这张表中,只有根据教师号和课程号才能够确定哪位教师讲授哪程号才能够确定哪位教师讲授哪门课程,因此门课程,因此教师任课的教师任课的关键字关键字是(职工号是(职工号,课程号)。该表在课程号)。该表在操作过程中存在下面几个问题:操作过程中存在下面几个问题:6 6数据库系统基础数据库系统基础每当教师开设一门

6、课程时,该每当教师开设一门课程时,该教师的职称、地址等信息就重复存教师的职称、地址等信息就重复存储一次。一般每位教师都开设几门储一次。一般每位教师都开设几门课,数据冗余不可避免。一个系有课,数据冗余不可避免。一个系有很多教师,使表中的数据冗余度很很多教师,使表中的数据冗余度很大。(数据冗余)大。(数据冗余)7 7数据库系统基础数据库系统基础 由于数据的重复存储,会给更新由于数据的重复存储,会给更新带来麻烦。如果一位任三门课的教师带来麻烦。如果一位任三门课的教师改变了地址,三个元组的地址都要更改变了地址,三个元组的地址都要更新,一旦一个元组的地址末修改就会新,一旦一个元组的地址末修改就会导致数据

7、不一致。如果某个系改变办导致数据不一致。如果某个系改变办公地址,所要修改的数据量会更大。公地址,所要修改的数据量会更大。(更新异常)(更新异常)8 8数据库系统基础数据库系统基础 如果学校新调入一个教师,暂如果学校新调入一个教师,暂时末主讲任何课程。由于缺少关键时末主讲任何课程。由于缺少关键字的一部分,而关键字不允许出现字的一部分,而关键字不允许出现空值,新教师就不能插入到此表中空值,新教师就不能插入到此表中去。只有当他开设了课程之后才能去。只有当他开设了课程之后才能插入,这是不合理的。(插入异常)插入,这是不合理的。(插入异常)9 9数据库系统基础数据库系统基础 与插入异常相反,如果某些教与

8、插入异常相反,如果某些教师致力于科研,不担任教学任务了,师致力于科研,不担任教学任务了,就要从当前数据库中删除有关记录。就要从当前数据库中删除有关记录。那么关于这些教师的其它信息将无那么关于这些教师的其它信息将无法记载,这也是极不合理的现象。法记载,这也是极不合理的现象。(删除异常)(删除异常)1010数据库系统基础数据库系统基础l上述在插入、删除或修改元组时上述在插入、删除或修改元组时将产生的不希望发生的异常情况将产生的不希望发生的异常情况是由于关系模式设计得不好所造是由于关系模式设计得不好所造成的。如果用下面四个关系模式成的。如果用下面四个关系模式代替原来的一个关系模式,上述代替原来的一个

9、关系模式,上述四方面则可题就基本解决了。四方面则可题就基本解决了。1111数据库系统基础数据库系统基础教师教师(职工号,姓名,职称,住址,系职工号,姓名,职称,住址,系号号)系系(系号,系名,系址)系号,系名,系址)课程(课程号,课程名,学分课程(课程号,课程名,学分)授课授课(职工号职工号,课程号,水平课程号,水平)l新的数据库包括四个关系模式,教师和新的数据库包括四个关系模式,教师和系之间通过教师中的外关键字系号相联系之间通过教师中的外关键字系号相联系;教师与课程之间多对多的联系通过系;教师与课程之间多对多的联系通过授课中的外关键字职工号和课程号相联授课中的外关键字职工号和课程号相联系。需

10、要时再进行自然联接,则恢复了系。需要时再进行自然联接,则恢复了原来的关系模式。原来的关系模式。1212数据库系统基础数据库系统基础3.2函数依赖 现实世界中的事物是彼此联系,互相现实世界中的事物是彼此联系,互相制约的。这种联系分为二类,一类是制约的。这种联系分为二类,一类是实体与实体之间的联系;另一类是实实体与实体之间的联系;另一类是实体内部各属性之间的联系。概念模型体内部各属性之间的联系。概念模型和数据模型中讨论实体之间的联系,和数据模型中讨论实体之间的联系,用数据模型来描述概念模型。函数依用数据模型来描述概念模型。函数依赖则是讨论属性之间的联系。赖则是讨论属性之间的联系。1313数据库系统

11、基础数据库系统基础一、属性间的联系实体内部属性间是互相联系的,属性间的联系也分为三类:l一对一联系一对一联系l一对多联系一对多联系l多对多联系多对多联系1414数据库系统基础数据库系统基础 关系模式中属性值之间这种相互依赖又相互制约的联系称为数据依赖。数据依赖主要有两种:函数依赖和多值依赖。1515数据库系统基础数据库系统基础二、函数依赖二、函数依赖函数依赖反映了实体内部属性之间函数依赖反映了实体内部属性之间的联系,是进行关系模式分解的指的联系,是进行关系模式分解的指导和依据。导和依据。l函数依赖函数依赖l完全函数依赖完全函数依赖l传递依赖传递依赖1616数据库系统基础数据库系统基础l1.函数

12、依赖函数依赖定义:用定义:用U表示属性集的全集表示属性集的全集A1,A2,.,An,设设R(U)是属性是属性集集U上的关系模式。上的关系模式。X,Y是是U的子集。的子集。若对于若对于R(U)的所有具体关系的所有具体关系r都满都满足如下约束:对于足如下约束:对于X的每一个具体值,的每一个具体值,Y有唯一的具体值与之对应,则称有唯一的具体值与之对应,则称Y函数依赖于函数依赖于X,或或X函数决定函数决定Y,记作记作X Y,X称作决定因素。称作决定因素。1717数据库系统基础数据库系统基础例例1 1:关系模式:关系模式R(R(职工号,基本工资,奖职工号,基本工资,奖金金),一个职工号唯一确定一个基本工

13、资,一个职工号唯一确定一个基本工资数额或一个奖金额,即一个人不能拿两种数额或一个奖金额,即一个人不能拿两种工资或奖金,但几个人的工资可能相同。工资或奖金,但几个人的工资可能相同。1818数据库系统基础数据库系统基础设属性设属性A A是职工号,属性是职工号,属性B B是基本是基本工资,属性工资,属性C C是奖金,则每个是奖金,则每个A A的值的值对应一个对应一个B B的值和一个的值和一个C C的值。因此,的值。因此,属性属性B B和和C C都函数依赖于属性都函数依赖于属性A A。如如基本工资基本工资3903900000对应两个职工号对应两个职工号051051和和054054,用符号表示为:,用符

14、号表示为:A AB B,A AC C。1919数据库系统基础数据库系统基础l2.完全依赖完全依赖定义定义:设设X Y是关系模式是关系模式R(U)的一个函数依赖,如果存的一个函数依赖,如果存在在X的真子集的真子集X,使得使得XY得成得成立,则称立,则称Y部分依赖于部分依赖于X,记作记作X Y。否则,称否则,称Y完全依赖于完全依赖于X,记记作作X Y。由定义可知,当由定义可知,当X是单个属性时,是单个属性时,由于由于X不存在任何真子集,如果不存在任何真子集,如果XY,则则X Y。p pf ff f2020数据库系统基础数据库系统基础例:设有关系模式选课例:设有关系模式选课例:设有关系模式选课例:设

15、有关系模式选课 SCl(S#SCl(S#SCl(S#SCl(S#,C#C#C#C#,GRADEGRADEGRADEGRADE,CREDITCREDITCREDITCREDIT)其中,其中,其中,其中,S#S#S#S#表表表表示学号,示学号,示学号,示学号,C#C#C#C#表示课程号,表示课程号,表示课程号,表示课程号,GRADEGRADEGRADEGRADE表表表表示成绩,示成绩,示成绩,示成绩,CREDITCREDITCREDITCREDIT表示学分。表示学分。表示学分。表示学分。在这个选课关系模式中,由于一在这个选课关系模式中,由于一在这个选课关系模式中,由于一在这个选课关系模式中,由于一

16、个学生可以选修多门课程,一门个学生可以选修多门课程,一门个学生可以选修多门课程,一门个学生可以选修多门课程,一门课程可有多个学生选修,因此课程可有多个学生选修,因此课程可有多个学生选修,因此课程可有多个学生选修,因此S#S#S#S#或或或或C#C#C#C#都不能单独确定都不能单独确定都不能单独确定都不能单独确定GRADEGRADEGRADEGRADE。成绩成绩成绩成绩只能由属性组合只能由属性组合只能由属性组合只能由属性组合(S#S#S#S#,C#)C#)C#)C#)来确定。来确定。来确定。来确定。课程学分课程学分课程学分课程学分CREDITCREDITCREDITCREDIT是是是是 C#C#

17、C#C#决定的,决定的,决定的,决定的,CCREDITCCREDITCCREDITCCREDIT。由此可知:由此可知:由此可知:由此可知:(S#S#S#S#,C#)GRADEC#)GRADEC#)GRADEC#)GRADE(S#(S#(S#(S#,C#)CREDITC#)CREDITC#)CREDITC#)CREDITS#C#GREATECREDITf fp p2121数据库系统基础数据库系统基础l3.传递依赖传递依赖定义定义:在同一关系模式在同一关系模式R(U)中,中,如果存在非平凡函数依赖如果存在非平凡函数依赖XY,YZ而而Y X,则称则称Z传递依赖于传递依赖于X。定义的条件定义的条件XY

18、,并强调并强调Y X十分必要。如果十分必要。如果X、Y互相依赖,互相依赖,实际上处于等价地位,实际上处于等价地位,XZ则为则为直接函数依赖联系,并非传递依赖。直接函数依赖联系,并非传递依赖。2222数据库系统基础数据库系统基础例:设关系模式例:设关系模式S1(S#,SNAME,D#,DNAME,LOCATION)各属各属性分别代表学号、姓名、所在系、系地性分别代表学号、姓名、所在系、系地址。址。存在函数依赖:存在函数依赖:S#D#,但但D#S#,D#LOCATION根据传递依赖的定义,根据传递依赖的定义,可知可知S#LOCATION是传递依赖。是传递依赖。实际上,部分依赖必然是传递依赖。如前例

19、实际上,部分依赖必然是传递依赖。如前例中中 SCl(S#SCl(S#,C#C#,GRADEGRADE,CEDITCEDIT)(S#(S#,C#)C#C#)C#,C#C#(S#S#,C#C#),),C#C#CREDITCREDIT,形成传递依赖形成传递依赖(S#S#,C#)CREDITC#)CREDIT。p p2323数据库系统基础数据库系统基础三、关键字l1.候选关键字候选关键字定义定义:在关系模式在关系模式R(U)中,中,K是是U中的属性或属性组。如果中的属性或属性组。如果K U,则则称称K为关系为关系R(U)的一个候选关键的一个候选关键字。字。R(U)中若有一个以上的候选关键中若有一个以上

20、的候选关键字,则选定其中一个作为主关键字。字,则选定其中一个作为主关键字。如果如果K是属性组,可称为组合关键字,是属性组,可称为组合关键字,或合成关键字。或合成关键字。f f2424数据库系统基础数据库系统基础包含在任意一个候选关键字中的属包含在任意一个候选关键字中的属性,称为主属性。不包含在任何候性,称为主属性。不包含在任何候选关键字中的属性称为非主属性。选关键字中的属性称为非主属性。候选关键字具有两个性质:候选关键字具有两个性质:标识的唯一性:对于标识的唯一性:对于R(U)中的每一中的每一个元组,个元组,K的值确定后,该元组就相的值确定后,该元组就相应确定了。应确定了。无冗余性:当无冗余性

21、:当K是属性组的情况下,是属性组的情况下,K的任何一部分都不能唯一标识该元组。的任何一部分都不能唯一标识该元组。这是定义中的完全函数依赖的意义。这是定义中的完全函数依赖的意义。2525数据库系统基础数据库系统基础例:学生选课关系模式例:学生选课关系模式SC(S#,C#,GRADE,CREDIT)中,中,属性组属性组(S#,C#)是候选关键字,是候选关键字,也是主关键字。也是主关键字。S#、C#是主属是主属性。性。GRADE、CREDIT是非主是非主属性。属性。2626数据库系统基础数据库系统基础在极端的情况下,关系模式的整个在极端的情况下,关系模式的整个属性组属性组U作为关键字,称为全关键字。

22、作为关键字,称为全关键字。此时,关系中没有非主属性。此时,关系中没有非主属性。例:演唱关系模式例:演唱关系模式YC(P,W,A),),属性属性P表示演奏者,表示演奏者,W表示作表示作品,品,A表示听众。假设一个演奏者可表示听众。假设一个演奏者可以演奏多个作品,某一作品可被多个以演奏多个作品,某一作品可被多个演奏者演奏。听众也可以欣赏不同作演奏者演奏。听众也可以欣赏不同作品,这个关系模式的码为(品,这个关系模式的码为(P,W,A),),即全关键字。即全关键字。2727数据库系统基础数据库系统基础l2.外关键字外关键字定义定义:在关系模式在关系模式R(U)中,若中,若属性或属性组属性或属性组X不是

23、关系不是关系R的关键的关键字,但字,但X是其它关系模式的关键字,是其它关系模式的关键字,则称则称X为关系模式为关系模式R(U)的外关的外关键字。键字。主关键字和外关键字是表示关系主关键字和外关键字是表示关系模式之间联系的手段。模式之间联系的手段。2828数据库系统基础数据库系统基础例:在选课关系数据库中,三个关系模式:例:在选课关系数据库中,三个关系模式:学生学生 S(S#,SNAME,SEX,ADDRESS),其中其中S#为主关键字。为主关键字。课程课程C(C#,CNAME,CREDIT),其其中中C#为主关键字。为主关键字。选课选课SC(S#,C#,GRADE),其中其中(S#,C#)为主

24、关键字,为主关键字,S#和和C#分分别为外关键字。别为外关键字。学生和课程存在的多对多的联系由选课反学生和课程存在的多对多的联系由选课反映出来,三个关系模式间的关联是通过映出来,三个关系模式间的关联是通过SCSC的外关键字的外关键字S#S#、C C#实现的。实现的。2929数据库系统基础数据库系统基础3.33.3关系范式关系范式范式即模式分解标准。范式即模式分解标准。规范化:一个低一级范式的关系模式,通规范化:一个低一级范式的关系模式,通过模式分解转换为若干个高一过模式分解转换为若干个高一 级范式的级范式的关系模式的集合,这种过程称为规范化。关系模式的集合,这种过程称为规范化。设计关系数据库时

25、,关系模式不可以随意设计关系数据库时,关系模式不可以随意建立,它们必须满足一定的规范化要求。建立,它们必须满足一定的规范化要求。一个关系模式满足某一指定的约束,称一个关系模式满足某一指定的约束,称此关系模式为特定范式的关系模式。满此关系模式为特定范式的关系模式。满足不同程度的要求构成不同的范式级别。足不同程度的要求构成不同的范式级别。3030数据库系统基础数据库系统基础关系模式有下列几种范式:关系模式有下列几种范式:l第一范式第一范式(1NF)l第二范式第二范式(2NF)l第三范式第三范式(3NF)3131数据库系统基础数据库系统基础一、第一范式一、第一范式(1NF)l定义定义:在关系模式只中

26、的每一个在关系模式只中的每一个具体关系具体关系r中,如果每个属性值中,如果每个属性值都是不可再分的最小数据单位,都是不可再分的最小数据单位,则称则称R是第一范式的关系模式。是第一范式的关系模式。记为记为R lNF。l不是不是1NF的关系模式称为非规范的关系模式称为非规范化关系模式。化关系模式。3232数据库系统基础数据库系统基础例:将下表规范成例:将下表规范成1NF职工号职工号 姓名姓名电话电话1001 李明李明7012633(H)7146688(O)1002 张伟张伟50012871003 刘大维刘大维2533886(O)2046543(H)3333数据库系统基础数据库系统基础二、第二范式二

27、、第二范式(2NF)l例:设有关系模式例:设有关系模式 SCl(S#,C#,GRADE,CREDIT)其中其中CREDIT表示学分。存在函数依赖:表示学分。存在函数依赖:(S#,C#)GRADE,C#CREDIT,关键字是关键字是(S#,C#)。3434数据库系统基础数据库系统基础S#C#GREADECREDITS1C1904S1C2853S1C3702S2C2803S2C3752S2C4953S3C28533535数据库系统基础数据库系统基础上述在插入、删除或修改元组时上述在插入、删除或修改元组时产生的异常与本章开始时所分析的产生的异常与本章开始时所分析的例子类似。在此例中,原因在于关例子类

28、似。在此例中,原因在于关系模式中的非主属性系模式中的非主属性CREDIT函函数依赖于组合关键字数依赖于组合关键字(S#,C#)的的一部分,而不是全部,即一部分,而不是全部,即(S#,C#)CREDIT。p p3636数据库系统基础数据库系统基础l定义定义:如果关系模式如果关系模式R(U)中的中的所有非主属性都完全函数依赖于所有非主属性都完全函数依赖于任任候选关键字,则称关系模式候选关键字,则称关系模式R是第二范式的。记为是第二范式的。记为R 2NF。将上述非将上述非2NF的的SCl规范化为满足规范化为满足2NF的关系模式,应设法消除部分的关系模式,应设法消除部分依赖。通过投影把它分解为以下两依

29、赖。通过投影把它分解为以下两个关系模式:个关系模式:SCl(S#,C#,GRADE),C2(C#,CREDIT)3737数据库系统基础数据库系统基础三、第三范式三、第三范式(3NF)l例:关系模式例:关系模式Sl(S#,SNAME,D#,DNAME,LOCATION),关键字关键字是是S#,不存在部分依赖,属于不存在部分依赖,属于2NF。但仍然存在大量冗余,由于系的重复值但仍然存在大量冗余,由于系的重复值随着学生的增加而增加。在插入、删除随着学生的增加而增加。在插入、删除或修改元组时也将产生类似例或修改元组时也将产生类似例3的异常的异常情况。分析其原因,由于关系模式中存情况。分析其原因,由于关

30、系模式中存在传递依赖在传递依赖S#LOCATION,(S#D#,D#S#,D#LOCATION)。)。3838数据库系统基础数据库系统基础l定义定义:如果关系模式如果关系模式R(U)中的中的所有非主属性对任何候选关键字都所有非主属性对任何候选关键字都不存在传递依赖,则称关系模式满不存在传递依赖,则称关系模式满足第三范式。记为足第三范式。记为R 3NF。3939数据库系统基础数据库系统基础通过投影分解将通过投影分解将S1S1分解成如下两个分解成如下两个关系模式后则满足关系模式后则满足3 3NFNF的要求。的要求。S(S#S(S#,SNAMESNAME,D#)D#),D(D#D(D#,DNAMED

31、NAME,LOCATION)LOCATION)必须注意,投影时不能从必须注意,投影时不能从S S中遗漏中遗漏外关键字外关键字D#D#,否则这两个关系模式否则这两个关系模式之间将失去联系,就不能通过自然之间将失去联系,就不能通过自然联接再恢复原来的关系模式了。联接再恢复原来的关系模式了。4040数据库系统基础数据库系统基础l由于部分依赖必然是传递依赖,所由于部分依赖必然是传递依赖,所以如果一个关系模式不存在传递依以如果一个关系模式不存在传递依赖,则必不存在赖,则必不存在 部分依赖。换言之,部分依赖。换言之,满足满足3NF的关系模式必然满足的关系模式必然满足2NF。4141数据库系统基础数据库系统

32、基础l一个关系模式分解成多个关系模式,要一个关系模式分解成多个关系模式,要使得分解有意义,起码的要求是分解后使得分解有意义,起码的要求是分解后不丢失原来的信息。这些信息不仅包括不丢失原来的信息。这些信息不仅包括数据本身,而且包括由函数依赖所表示数据本身,而且包括由函数依赖所表示的数据之间的相互制约。所以,进行分的数据之间的相互制约。所以,进行分解的目标是达到更高一级的规范化程度,解的目标是达到更高一级的规范化程度,但是分解的同时必须考虑两个问题:元但是分解的同时必须考虑两个问题:元损联接性和保持函数依赖。损联接性和保持函数依赖。l无损分解的充分必要条件是:无损分解的充分必要条件是:RlR2R1

33、-R2或或R1R2R2-R14242数据库系统基础数据库系统基础五、规范化小结五、规范化小结l规范化的过程是逐步消除关系模规范化的过程是逐步消除关系模式中不合适的数据依赖的过程,式中不合适的数据依赖的过程,使模型中的各个关系模式达到某使模型中的各个关系模式达到某种程度的分离。种程度的分离。4343数据库系统基础数据库系统基础 1NF 消除非主属性对关键字的部分函数依赖消除非主属性对关键字的部分函数依赖 2NF 消除非主属性对关键字的传递函数依赖消除非主属性对关键字的传递函数依赖 3NF4444数据库系统基础数据库系统基础l例:教师任课(教师号、教师姓名、例:教师任课(教师号、教师姓名、职称、教

34、师地址、系、系名称、系职称、教师地址、系、系名称、系地址、课程号码、课程名、教学水地址、课程号码、课程名、教学水平、学分)平、学分)根据语义分析函数依赖:(职工号,课程号)的值可以唯一的决定各元组,所以(职工号,课程号)是关键字。4545数据库系统基础数据库系统基础C#T#D#CREDITLEVELLOC函数依赖图函数依赖图4646数据库系统基础数据库系统基础由于由于C#(CNAME,CREDIT),T#(TNAME,TITLE,ADDR)存在非存在非主属性对关键字主属性对关键字(T#,C#)的部分依赖,的部分依赖,因此原关系模式不属因此原关系模式不属2NF。为了消除部分为了消除部分依赖,将依

35、赖,将TDC投影分解成三个关系模式:投影分解成三个关系模式:TC(T#,C#,LEVEL)关键字是关键字是(T#,C#)TD(T#,TNAME,ADDR,D#,DNAME,LOC)关键字是关键字是T#C(C#,CNAME,CREDIT)关键字是关键字是C#4747数据库系统基础数据库系统基础但在但在 TD中,中,T#D#,D#T#,D#DNAME,D#LOC,故非主故非主DNAME和和LOC传递依赖于关键字传递依赖于关键字T#,所以所以TD不是不是3NF关系模式。为消除关系模式。为消除传递依赖,又将传递依赖,又将TD进一步投影分解成两进一步投影分解成两个关系模式:个关系模式:T(T#,TNAM

36、E,ADDR,D#)关关键字是键字是T#D(D#,DNAME,LOC)关键字是关键字是 D#4848数据库系统基础数据库系统基础可以用下面四个关系模式代替最初的可以用下面四个关系模式代替最初的关系模式关系模式TDC:T(T#,TNAME,TITLE,ADDR,D#)关键字是关键字是T#D(D#,DNAME,LOC)关键字是关键字是 D#C(C#,CNAME,CREDIT)关键关键字是字是C#TC(T#,C#、LEVEL)关键字是关键字是(T#,C#)4949数据库系统基础数据库系统基础关系模式的规范化可以小结如下:关系模式的规范化可以小结如下:l目的:规范化目的是使结构合理,目的:规范化目的是

37、使结构合理,清除存储异常使数据冗余尽量小,清除存储异常使数据冗余尽量小,便于插入、删除和更新。便于插入、删除和更新。l原则:遵从概念单一化原则:遵从概念单一化“一事一地一事一地”原则,即一个关系模式描述一个原则,即一个关系模式描述一个实体或实体间的一种联系。规范的实体或实体间的一种联系。规范的实质就是概念单实质就是概念单化。化。5050数据库系统基础数据库系统基础l方法:将关系模式投影分解成两个或方法:将关系模式投影分解成两个或两个以上的关系模式。两个以上的关系模式。l要求:分解后的关系模式集合应当与要求:分解后的关系模式集合应当与原关系模式原关系模式“等价等价”,即经过自然联,即经过自然联接

38、可以恢复原关系而不丢失信息,并接可以恢复原关系而不丢失信息,并保持属性间合理的联系。保持属性间合理的联系。5151数据库系统基础数据库系统基础必须注意,一个关系模式经过投影必须注意,一个关系模式经过投影分解可以得到不同的关系模式集合,分解可以得到不同的关系模式集合,也就是说分解分解方法并不唯一。也就是说分解分解方法并不唯一。5252数据库系统基础数据库系统基础本章小结本章小结这一章,介绍了函数依赖的概念,包括函数这一章,介绍了函数依赖的概念,包括函数依赖、完全函数依赖、传递依赖。以函数依赖、完全函数依赖、传递依赖。以函数依赖为基础的关系范式包括第一范式、第依赖为基础的关系范式包括第一范式、第二范式、第三范式二范式、第三范式。只有掌握关系数据库只有掌握关系数据库设计理论,在数据库设计过程中才能克服设计理论,在数据库设计过程中才能克服盲目性,做到目标明确。在进行关系模式盲目性,做到目标明确。在进行关系模式的分解过程中应当注意到分解的无损联接的分解过程中应当注意到分解的无损联接性和保持函数依赖两个问题。要使分解具性和保持函数依赖两个问题。要使分解具有无损联接性必须使分解结果满足判定无有无损联接性必须使分解结果满足判定无损分解的法则。损分解的法则。否则,分解后不能通过自否则,分解后不能通过自然联接恢复原来的关系模式。然联接恢复原来的关系模式。5353数据库系统基础数据库系统基础

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

当前位置:首页 > 生活休闲 > 生活常识

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

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com