




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、7.1 7.1 关系模式的评价关系模式的评价7.2 7.2 函数依赖函数依赖7.3 7.3 范式范式第第7 7章章 关系数据库设计理论关系数据库设计理论7.1 7.1 关系模式的评价关系模式的评价一、关系模式一、关系模式 关系模式是对关系(表)的描述,为了能够清楚地刻划出一关系模式是对关系(表)的描述,为了能够清楚地刻划出一个关系,关系模式需要由五部分组成,即:个关系,关系模式需要由五部分组成,即:R R(U U,D D,DOMDOM,F F)其中:其中:R R:关系名:关系名 U U:全体属性集合:全体属性集合 D D:属性域的集合:属性域的集合 DOMDOM:U U和和D D之间的映射关系
2、的集合之间的映射关系的集合 F F:属性间数据的依赖关系的集合,即组成关系的各个元:属性间数据的依赖关系的集合,即组成关系的各个元组必须满足的完整性约束条件。这些约束或者通过对属性取值范组必须满足的完整性约束条件。这些约束或者通过对属性取值范围的限定,例如学生成绩必须在围的限定,例如学生成绩必须在01000100之间,或者通过属性值间之间,或者通过属性值间的相互关联(主要体现于值的相等与否)反映出来,后者称为数的相互关联(主要体现于值的相等与否)反映出来,后者称为数据依赖。据依赖。 由于在关系模式由于在关系模式R R(U U,D D,DOMDOM,F F)中,影响数据)中,影响数据库模式设计的
3、主要是库模式设计的主要是U U和和F F,D D和和DOMDOM对其影响不大,关对其影响不大,关系模式简化为三元组:系模式简化为三元组: R R(U U,F F)7.1 7.1 关系模式的评价关系模式的评价 关系是关系模式在某一时刻的状态或内容,不同关系是关系模式在某一时刻的状态或内容,不同时刻关系模式中的关系可能有所不同,但它们必须满时刻关系模式中的关系可能有所不同,但它们必须满足关系模式中足关系模式中F F所指定的完整性约束条件。即所指定的完整性约束条件。即: :当且仅当且仅当当U U上的一个关系上的一个关系r r满足满足F F时,时,r r称为关系模式称为关系模式R R(U U,F F)
4、的一个关系。的一个关系。 例:要求设计一个教学管理数据库,希望从该数据库例:要求设计一个教学管理数据库,希望从该数据库中得到学生学号、学生姓名、年龄、系别、系主任姓名、中得到学生学号、学生姓名、年龄、系别、系主任姓名、学生学习的课程和该课程的成绩等信息。若将这些信息设学生学习的课程和该课程的成绩等信息。若将这些信息设计为一个关系,关系模式为:计为一个关系,关系模式为: 教学(学号,姓名,年龄,系名,系主任,课程名,成绩)教学(学号,姓名,年龄,系名,系主任,课程名,成绩)此关系模式的码为此关系模式的码为(学号,课程名)(学号,课程名)7.1 7.1 关系模式的评价关系模式的评价教学(学号,姓名
5、,年龄,系名,系主任,课程名,成绩)教学(学号,姓名,年龄,系名,系主任,课程名,成绩)学号学号姓名姓名年龄年龄系名系名系主任系主任课程名课程名成绩成绩9800198001李华李华2121计算机计算机王民王民C C语言语言90909800198001李华李华2121计算机计算机王民王民高等数学高等数学80809800298002张平张平2222计算机计算机王民王民C C语言语言65659800298002张平张平2222计算机计算机王民王民高等数学高等数学70709800398003陈兵陈兵2121数学数学赵敏赵敏高等数学高等数学95959800398003陈兵陈兵2121数学数学赵敏赵敏 离
6、散数学离散数学75759900199001陆莉陆莉2323物理物理王珊王珊普通物理普通物理85857.1 7.1 关系模式的评价关系模式的评价以上关系存在下面几个问题以上关系存在下面几个问题 (1)(1)数据冗余较大数据冗余较大。一个学生只有一个姓名,但上面的表中若一个学生选。一个学生只有一个姓名,但上面的表中若一个学生选几门课,则该学生的姓名就要重复几次。同样一个系也只有一个系主任,上几门课,则该学生的姓名就要重复几次。同样一个系也只有一个系主任,上表中系主任的姓名重复就更多了。表中系主任的姓名重复就更多了。 (2)(2)修改异常修改异常。假如计算机系的系主任换了,那么上表中的四条记录的系。
7、假如计算机系的系主任换了,那么上表中的四条记录的系主任都需要修改,假如改得不一样,或少改一处,就会造成数据不一致。主任都需要修改,假如改得不一样,或少改一处,就会造成数据不一致。 (3)(3)插入异常插入异常。假如新成立了一个系:化工系,并且也有了系主任,但还。假如新成立了一个系:化工系,并且也有了系主任,但还没有招学生,所以不能在上表中插入化工系的记录,也就不能在数据库中保没有招学生,所以不能在上表中插入化工系的记录,也就不能在数据库中保存化工系的系名和系主任的信息。同样如果新增一门课,但还没有学生选修,存化工系的系名和系主任的信息。同样如果新增一门课,但还没有学生选修,所以也不能插入该课程
8、。所以也不能插入该课程。 (4)(4)删除异常删除异常。如果数学系的学生全毕业了,则需要删除该系的学生记录,。如果数学系的学生全毕业了,则需要删除该系的学生记录,但如果该系的学生全删除了,则该系的系名、系主任信息也从数据库中删除但如果该系的学生全删除了,则该系的系名、系主任信息也从数据库中删除了。了。7.1 7.1 关系模式的评价关系模式的评价结论:结论: 以上关系模式不是一个好的关系模式。以上关系模式不是一个好的关系模式。 一个好的关系模式,除了能满足用户对信息存储和查询一个好的关系模式,除了能满足用户对信息存储和查询的基本要求外,还应具备下列条件:的基本要求外,还应具备下列条件:(1)尽可
9、能少的数据冗余;)尽可能少的数据冗余;(2)没有插入异常;)没有插入异常;(3)没有删除异常;)没有删除异常;(4)没有更新异常。)没有更新异常。 7.1 7.1 关系模式的评价关系模式的评价二、关系模式的评价二、关系模式的评价1、关系数据库设计的核心关系数据库设计的核心:关系模式的设计。:关系模式的设计。 2、关系模式的设计目标关系模式的设计目标:按照一定的原则从数量众多而又相:按照一定的原则从数量众多而又相互关联的数据中,构造出一组既能较好地反映现实世界,而又互关联的数据中,构造出一组既能较好地反映现实世界,而又有良好的操作性能的关系模式。有良好的操作性能的关系模式。7.1 7.1 关系模
10、式的评价关系模式的评价三、模式分解是关系规范化的主要方法三、模式分解是关系规范化的主要方法 对于有问题的关系模式,可以通过模式分解的方法使之对于有问题的关系模式,可以通过模式分解的方法使之规范化,上述关系模式如果分解为如下三个关系则可以克服规范化,上述关系模式如果分解为如下三个关系则可以克服以上出现的问题。以上出现的问题。 学生(学号,姓名,年龄,系名)学生(学号,姓名,年龄,系名) 系(系名,系主任)系(系名,系主任) 选课(学号,课程名,成绩)选课(学号,课程名,成绩) 如何分解关系模式,分解的依据是什么?下二节将讨论如何分解关系模式,分解的依据是什么?下二节将讨论这些问题。这些问题。7.
11、1 7.1 关系模式的评价关系模式的评价SQL Server 2000SQL Server 20007.2 7.2 函数依赖函数依赖一、数据依赖一、数据依赖 数据依赖就是指同一关系中属性值的相互依赖和相互数据依赖就是指同一关系中属性值的相互依赖和相互制约,即一个关系中属性间值的相等与否体现出来的数据制约,即一个关系中属性间值的相等与否体现出来的数据间的相互关系。如学生的学号将决定学生姓名,课程名将间的相互关系。如学生的学号将决定学生姓名,课程名将决定有哪些参考书等等。决定有哪些参考书等等。 数据依赖分数据依赖分函数依赖函数依赖、多值依赖多值依赖和和连接依赖连接依赖等,其中等,其中函数依赖是最基
12、本的一种数据依赖。函数依赖是最基本的一种数据依赖。二、函数依赖二、函数依赖函数依赖的定义:函数依赖的定义: 设有关系模式设有关系模式R R(U U),),U U是属性集,是属性集,X X和和Y Y是是U U的子集,的子集,r r是是R R(U U)的任一个关系。如果)的任一个关系。如果r r中不可能存在两个元组在中不可能存在两个元组在X X上上的属性值相等,而的属性值相等,而Y Y上的属性值不等,即任意的两个元组上的属性值不等,即任意的两个元组t1t1和和t2t2,若,若t1(X)=t2(X)t1(X)=t2(X),必有,必有t1(Y)=t2(Y)t1(Y)=t2(Y),那么我们称属性组,那么
13、我们称属性组X X函数确定函数确定属性组属性组Y Y,或者说,或者说Y Y函数依赖函数依赖于于X X。记为。记为X XY Y,其中,其中X X叫决定因素,叫决定因素,Y Y叫依赖因素。叫依赖因素。7.2 7.2 函数依赖函数依赖 简单地说,对于任意两个元组,如果它们的简单地说,对于任意两个元组,如果它们的X X属性组值相属性组值相同,则它们的同,则它们的Y Y属性组值也相同,我们就说属性组值也相同,我们就说X X函数确定函数确定Y Y,或者或者说说Y Y函数依赖于函数依赖于X X。 更简单的表达:对于每一个确定的更简单的表达:对于每一个确定的X X,Y Y的值就被唯一地的值就被唯一地确定,则说
14、确定,则说X X函数确定函数确定Y Y,或者说或者说Y Y函数依赖于函数依赖于X X。 7.2 7.2 函数依赖函数依赖如关系:公民(身份证号,姓名,地址,工作单位)如关系:公民(身份证号,姓名,地址,工作单位) 身份证号一确定,则其地址就唯一确定,因此身份证号函数确身份证号一确定,则其地址就唯一确定,因此身份证号函数确定地址。定地址。 而姓名一确定,不一定能确定地址。而姓名一确定,不一定能确定地址。例:说出下列关系模式中的一些函数依赖。例:说出下列关系模式中的一些函数依赖。学生(学号,姓名,年龄,性别)学生(学号,姓名,年龄,性别)选课(学号,课程号,成绩)选课(学号,课程号,成绩)7.2
15、7.2 函数依赖函数依赖三、函数依赖的几种特例三、函数依赖的几种特例 1、平凡函数依赖与非平凡函数依赖、平凡函数依赖与非平凡函数依赖 由于由于Y X Y X 时,一定有时,一定有XYXY,平凡函数依赖必然成立,平凡函数依赖必然成立,没有意义,所以一般所说的函数依赖总是指非平凡函数依赖。没有意义,所以一般所说的函数依赖总是指非平凡函数依赖。若若Y X Y X ,则称,则称XYXY为平凡函数依赖。为平凡函数依赖。7.2 7.2 函数依赖函数依赖如果如果XYXY,且且Y XY X,则,则XYXY 称为非平凡函数依赖。称为非平凡函数依赖。推论:如果推论:如果XY ,且,且X是单个属性,则是单个属性,则
16、X Y2、完全函数依赖与部分函数依赖、完全函数依赖与部分函数依赖如果如果XY XY ,且对于任何,且对于任何X XX X,都有,都有X YX Y,则称,则称Y Y完全依赖于完全依赖于X X,记作,记作X YX Y如果如果XYXY,但,但Y Y不完全依赖于不完全依赖于X X,则称,则称Y Y部分函数依赖于部分函数依赖于X X,记作记作X YX Y7.2 7.2 函数依赖函数依赖如:选课(学号,课程号,课程名,成绩)如:选课(学号,课程号,课程名,成绩)(学号,课程号)(学号,课程号) 成绩成绩(学号,课程号)(学号,课程号) 课程名课程名因为因为 课程号课程号 课程名课程名 SQL Server
17、 2000SQL Server 20003、传递函数依赖、传递函数依赖 如果如果XY XY ,YZYZ,且且Y XY X, Y XY X,则称,则称Z Z传递函数依传递函数依赖于赖于X X。记作。记作X X传递传递Z Z 如:学生(学号,姓名,系名,系主任)如:学生(学号,姓名,系名,系主任)显然系主任传递函数依赖于学号,显然系主任传递函数依赖于学号,因为学号因为学号系名,系名系名,系名系主任系主任7.2 7.2 函数依赖函数依赖 思考题:已知关系模式思考题:已知关系模式R R(学生学号,课程名,学生专业号,(学生学号,课程名,学生专业号,专业名,成绩),说出下面是什么关系?专业名,成绩),说
18、出下面是什么关系?(学生学号,课程名,学生专业号)(学生学号,课程名,学生专业号) 成绩成绩 学生学号学生学号 专业名专业名(学生学号,专业名)(学生学号,专业名) 成绩成绩(学生学号,课程名)(学生学号,课程名) 成绩成绩(课程名,专业名,成绩)(课程名,专业名,成绩) (课程名,成绩)(课程名,成绩) (函数依赖,部分函数依赖)(函数依赖,部分函数依赖) (函数依赖,传递函数依赖)(函数依赖,传递函数依赖) (不是函数依赖)(不是函数依赖) (完全函数依赖)(完全函数依赖) (平凡函数依赖)(平凡函数依赖) 7.2 7.2 函数依赖函数依赖4、侯选码、侯选码 我们已经知道,如果某属性组的值
19、能唯一确定整个元组的我们已经知道,如果某属性组的值能唯一确定整个元组的值,则称该属性组为候选码或侯选关键字。值,则称该属性组为候选码或侯选关键字。 如(学号,姓名,性别,年龄)中,学号是关键字,如(学号,姓名,性别,年龄)中,学号是关键字, (学号,姓名)不是关键字,性别不是关键字。(学号,姓名)不是关键字,性别不是关键字。 现在给出候选码的精确定义。现在给出候选码的精确定义。 设有关系模式设有关系模式R R(U U),),U U为属性全集,为属性全集,X X是是U U的子集,如果的子集,如果有有X UX U,则称,则称X X是是R R的一个候选码。的一个候选码。 也就是也就是X U,X U,
20、且不存在且不存在Y XY X,使得,使得Y YU U。 候选码如果有多个,可以选其中的一个作为主码。候选码如果有多个,可以选其中的一个作为主码。7.2 7.2 函数依赖函数依赖7.3 7.3 范式范式范式范式:关系模式满足的约束条件称为范式。根据满足规:关系模式满足的约束条件称为范式。根据满足规范化的程度不同,范式由低到高分为范化的程度不同,范式由低到高分为1NF1NF,2NF2NF,3NF3NF,BCNFBCNF,4NF4NF,5NF5NF。对于各种范式之间的联系有:。对于各种范式之间的联系有: 5NF 4NF BCNF 3NF 2NF 1NF 5NF 4NF BCNF 3NF 2NF 1N
21、F关系模式的规范化关系模式的规范化:把一个低一级的关系模式分解为高:把一个低一级的关系模式分解为高一级关系模式的过程。一级关系模式的过程。 如果关系模式如果关系模式R,其所有属性都是不可再分的基本数据项,其所有属性都是不可再分的基本数据项,则称则称R属于第一范式,属于第一范式,R1NF 不满足不满足1NF的关系称为的关系称为非规范化关系非规范化关系。7.3 7.3 范式范式一、第一范式(一、第一范式(1NF1NF)例:职工(工号,姓名,工资例:职工(工号,姓名,工资(基本工资,岗位津贴,补贴基本工资,岗位津贴,补贴) 是一个非规范化关系。是一个非规范化关系。 第一范式是作为一个关系模式的最起码
22、要求,是一定要满足第一范式是作为一个关系模式的最起码要求,是一定要满足的。的。 第一范式仅是关系模式的最低要求,仅仅满足第一范式是不第一范式仅是关系模式的最低要求,仅仅满足第一范式是不够的。够的。如前面所讲的关系模式:如前面所讲的关系模式:如:教学(学号,姓名,年龄,系名,系主任,课程名,如:教学(学号,姓名,年龄,系名,系主任,课程名,成绩)成绩)它满足第一范式,但存在较大数据冗余和插入、删除、修它满足第一范式,但存在较大数据冗余和插入、删除、修改异常。改异常。7.3 7.3 范式范式 如关系模式如关系模式R1NF,且每个非主属性,且每个非主属性完全函数依赖于完全函数依赖于候选候选码,则称码
23、,则称R属于第二范式,属于第二范式,R2NF。 通俗理解:一个表中的所有属性都要依赖主键。通俗理解:一个表中的所有属性都要依赖主键。二、第二范式(二、第二范式(2NF2NF)7.3 7.3 范式范式7.3 7.3 范式范式例例1:判断:判断R(教师编号,教师地址,课程号,课程名)是否(教师编号,教师地址,课程号,课程名)是否属于第二范式。属于第二范式。 候选码:(教师编号,课程号)候选码:(教师编号,课程号) 非主属性:教师地址,课程名非主属性:教师地址,课程名因为因为: (: (教师编号,课程号教师编号,课程号) ) 教师地址教师地址 ( (教师编号,课程号教师编号,课程号) ) 课程名课程
24、名所以本关系模式不属于第二范式。所以本关系模式不属于第二范式。SQL Server 2000SQL Server 2000 例例2 2:判断:判断 选课(学号,课程号,成绩)是否属于选课(学号,课程号,成绩)是否属于2NF 2NF ,假如规定一个学生一门课只有一个成绩假如规定一个学生一门课只有一个成绩候选码:(学号,课程号)候选码:(学号,课程号) 非主属性:成绩非主属性:成绩因为成绩完全函数依赖于(学号,课程号)因为成绩完全函数依赖于(学号,课程号) 所以属于所以属于2NF2NF7.3 7.3 范式范式SQL Server 2000SQL Server 2000 例例3 3:判断教师上课:判
25、断教师上课teach(teacher,class,course) 2NF? teach(teacher,class,course) 2NF? 假定一位教师给同一个班至多上一门课,一门课可以由多位教假定一位教师给同一个班至多上一门课,一门课可以由多位教师上,一名老师也可上多门课。师上,一名老师也可上多门课。候选码:(候选码:(teacher,classteacher,class) 非主属性:非主属性: coursecourse因为因为coursecourse完全函数依赖于(完全函数依赖于( teacher,classteacher,class) 所以属于所以属于2NF2NF7.3 7.3 范式范
26、式不满足第二范式的关系模式必然存在各种存储异常。如例不满足第二范式的关系模式必然存在各种存储异常。如例1 1满足了满足了2NF2NF是不是就不存在存储异常呢?不是。是不是就不存在存储异常呢?不是。例:学生(学号,姓名,年龄,系名,系主任)例:学生(学号,姓名,年龄,系名,系主任)它满足它满足2NF2NF,但还存如下问题;,但还存如下问题;存在数据冗余:大量的系信息冗余;存在数据冗余:大量的系信息冗余;它存在插入异常:系刚成立,没有学生时不能添加系;它存在插入异常:系刚成立,没有学生时不能添加系;它存在删除异常:某系学生全部毕业,系的信息丢失;它存在删除异常:某系学生全部毕业,系的信息丢失;它存
27、在修改异常:系主任改动,需要改动多处。它存在修改异常:系主任改动,需要改动多处。因此,满足了因此,满足了2NF2NF还不够。还不够。7.3 7.3 范式范式 如果关系模式如果关系模式R2NFR2NF,且,且R R的任一非主属性都的任一非主属性都不传递函数依赖不传递函数依赖于任何候选码,则称于任何候选码,则称R R属于第三范式,属于第三范式,R3NFR3NF。 通俗理解:要求一个表中不包含已在其他表中包含的非主关键通俗理解:要求一个表中不包含已在其他表中包含的非主关键字。字。三、第三范式(三、第三范式(3NF3NF)7.3 7.3 范式范式 不满足不满足3NF3NF的关系模式存在各种存储异常。那
28、么满足的关系模式存在各种存储异常。那么满足3NF3NF的的关系模式是不是就不存在存储异常呢?一般情况下是可以了,关系模式是不是就不存在存储异常呢?一般情况下是可以了,但有些特殊情况下依然还存在存储异常。但有些特殊情况下依然还存在存储异常。例例4:判断关系模式:判断关系模式选课选课(学号,姓名,课程号,成绩)(学号,姓名,课程号,成绩)3NF?步骤:它是否满足步骤:它是否满足2NF?不是。?不是。既然不满足既然不满足2NF,当然不满足,当然不满足3NF。7.3 7.3 范式范式如:如:教学(学生,教师,课程),假定每一教师只能讲一门教学(学生,教师,课程),假定每一教师只能讲一门课,每门课由若干
29、教师讲授,每个学生选修某门课时就对应课,每门课由若干教师讲授,每个学生选修某门课时就对应一个固定的教师。一个固定的教师。候选码:(候选码:(学生,教师),(学生,课程)学生,教师),(学生,课程)三个属性都是主属性,没有非主属性,满足三个属性都是主属性,没有非主属性,满足2NF和和3NF。但该关系模式还是有数据冗余和存储异常。如但该关系模式还是有数据冗余和存储异常。如插入异常:无法存储不选课的学生和不开课的教师插入异常:无法存储不选课的学生和不开课的教师删除异常:无法删除一个学生的选课信息删除异常:无法删除一个学生的选课信息更新异常:某门课的某位教师换了,则选该教师的所有记录均更新异常:某门课
30、的某位教师换了,则选该教师的所有记录均需修改。需修改。数据冗余大:一个学生选多门课,需重复存放该学生的信息数据冗余大:一个学生选多门课,需重复存放该学生的信息7.3 7.3 范式范式问题存在的原因:问题存在的原因: 主属性部分函数依赖于侯选码主属性部分函数依赖于侯选码 (注(注2NF,3NF是要求非主属是要求非主属性对侯选码的要求,而不是主属性对侯选码的要求)性对侯选码的要求,而不是主属性对侯选码的要求) 如(学生,教师)如(学生,教师)课程,而教师课程,而教师课程,所以课程部分依课程,所以课程部分依赖于码(学生,教师)赖于码(学生,教师)7.3 7.3 范式范式四、四、BCBC范式(范式(B
31、CNFBCNF) 设关系模式设关系模式R R(U U)1NF1NF,如果对于,如果对于R R的每个非平凡函数依的每个非平凡函数依赖赖XYXY(Y XY X),则),则X X必包含候选码,那么必包含候选码,那么RBCNFRBCNF。即若每。即若每一个决定因素都包含候选码,则一个决定因素都包含候选码,则RBCNFRBCNF。7.3 7.3 范式范式SQL Server 2000SQL Server 2000由由BCNFBCNF的定义可以看出,每个的定义可以看出,每个BCNFBCNF的关系模式都具有如下性的关系模式都具有如下性质:质:所有非主属性都完全函数依赖于每个侯选码所有非主属性都完全函数依赖于
32、每个侯选码所有主属性都完全函数依赖于每个不包含它的侯选码所有主属性都完全函数依赖于每个不包含它的侯选码没有任何属性完全函数依赖于非码的任何一组属性没有任何属性完全函数依赖于非码的任何一组属性( (即每一即每一个决定因素都包含码个决定因素都包含码) )从函数依赖范畴内,从函数依赖范畴内,BCNFBCNF已经达到了最高的要求。已经达到了最高的要求。推论:如果推论:如果R R只有一个侯选码,且只有一个侯选码,且R R3NF3NF,则,则R R必属于必属于BCNFBCNF7.3 7.3 范式范式BCNFBCNF与与3NF3NF的区别的区别:3NF3NF只强调非主属性对码的完全直只强调非主属性对码的完全
33、直接依赖,而接依赖,而BCNFBCNF不仅强调非主属性对码的完全直接依不仅强调非主属性对码的完全直接依赖,而且强调主属性对码的完全直接依赖,它包括赖,而且强调主属性对码的完全直接依赖,它包括3NF3NF。7.3 7.3 范式范式 将关系模式转化为较高级的范式称为关系模式的规范化。将关系模式转化为较高级的范式称为关系模式的规范化。 关系模式属于范式的级别越高,出现异常的概率越小,所关系模式属于范式的级别越高,出现异常的概率越小,所以我们应该让关系模式尽可能属于较高级的范式。以我们应该让关系模式尽可能属于较高级的范式。 规范化的规范化的目的目的:解决插入、修改、删除异常以及数据冗余:解决插入、修改
34、、删除异常以及数据冗余度高等问题。度高等问题。 规范化的规范化的方法方法:从模式中各属性间的依赖关系入手,尽可:从模式中各属性间的依赖关系入手,尽可能做到每个模式表示客观世界中的一个能做到每个模式表示客观世界中的一个“事物事物”。 规范化的规范化的实现手段实现手段:关系模式的规范化通常是采用分解的:关系模式的规范化通常是采用分解的办法,也就是将关系模式分解为几个关系模式,使每个关系模办法,也就是将关系模式分解为几个关系模式,使每个关系模式都达到更高的范式级别。但这种分解要求信息不能有损失。式都达到更高的范式级别。但这种分解要求信息不能有损失。五、关系模式的规范化五、关系模式的规范化7.3 7.
35、3 范式范式范式小结:范式小结:1NF 消除非主属性对侯选码的部分依赖消除非主属性对侯选码的部分依赖2NF 消除非主属性对侯选码的传递依赖消除非主属性对侯选码的传递依赖3NF 消除主属性对侯选码的部分依赖和传递依赖消除主属性对侯选码的部分依赖和传递依赖BCNF 消除非平凡且非函数依赖的多值依赖消除非平凡且非函数依赖的多值依赖 4NF 消除不是由侯选码蕴含的连接依赖消除不是由侯选码蕴含的连接依赖5NF7.3 7.3 范式范式 例:设关系模式例:设关系模式R(学号,课程号,成绩,教师姓名,教师地(学号,课程号,成绩,教师姓名,教师地址)规定:每个学生每学一门课只有一个成绩,每门课只有一个址)规定:
36、每个学生每学一门课只有一个成绩,每门课只有一个教师任教,每个教师只有一个地址,且教师没有同名同姓。教师任教,每个教师只有一个地址,且教师没有同名同姓。要求:要求:(1)写出)写出R的基本函数依赖:的基本函数依赖:存在如下基本函数依赖:存在如下基本函数依赖:(学号,课程号)(学号,课程号) 成绩成绩 课程号课程号教师姓名教师姓名教师姓名教师姓名教师地址教师地址7.3 7.3 范式范式(3)确定)确定R属于第几范式,并说明理由属于第几范式,并说明理由因为:因为:课程号课程号教师姓名教师姓名 则则(学号,课程号)(学号,课程号) 教师姓名教师姓名 所以:所以:R不属于不属于2NF,R属于属于1NF7.3 7.3 范式范式(2)写出)写出R的侯选码:的侯选码:R的侯选码:的侯选码: (学号,课程号)(学号,课程号) (4)若)若R不属于不属于2NF,则将,则将R分解为分解为2NF,并说明理由,并说明理由把把R分解为如下二个关系模式:分解为如下二个关系模式:R1 (学号,课程号,成绩)(学号,课程号,成绩)R2 (课程号,教师姓名,教师地址)(课程号,教师姓名,教师地址)因为:因为:R1R1的侯选码为:的侯选码为:(学号,课程号),非主属性:成绩(学号,课程号),非主
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 碳素掺杂剂在铁合金冶炼中的应用考核试卷
- 森林公园生态旅游市场细分与定位考核试卷
- 农业农业机械产业节能减排配合服务批发考核试卷
- 矿物加工厂职业卫生与员工健康考核试卷
- 渔业资源保护与海洋资源长期可持续发展战略全面实施考核试卷
- 电信行业区块链技术探索与应用考核试卷
- 红富士苹果病虫害防治考核试卷
- 武汉民政职业学院《描述统计学和概率》2023-2024学年第一学期期末试卷
- 石家庄工程职业学院《环境学导论》2023-2024学年第二学期期末试卷
- 山西体育职业学院《高级应用气象统计》2023-2024学年第二学期期末试卷
- 广州市黄埔区教育局招聘事业编制教职员考试真题2024
- 2025世界防治哮喘日知识讲座专题课件
- 粮食安全时政试题及答案
- 小学开展常规教育经验交流活动方案
- 国际经济学(下册国际金融)克鲁格曼-中文答案
- 第四单元专题学习《孝亲敬老传承家风》公开课一等奖创新教学设计-(同步教学)统编版语文七年级下册名师备课系列
- 茂名市生活垃圾焚烧发电项目
- 2025年03月四川成都农业科技中心公开招聘笔试历年典型考题(历年真题考点)解题思路附带答案详解
- 大学英语四级考试2024年6月真题(第1套)翻译
- 2024年郑州铁路职业技术学院单招职业技能测试题库必考题
- 2025年03月国家机关事务管理局所属事业单位公开招聘应届毕业生14人笔试历年典型考题(历年真题考点)解题思路附带答案详解
评论
0/150
提交评论