
第三章 关系规范化基础 一、要点解析 31数据依赖 定义1:设一个关系为U),X和Y为属性集U上的子集。若对于元组中X上的每个 值,都有Y上的一个难一值与之对应,则称X和Y具有函数依赖关系,并称X函数决定Y, 或移Y函数依赖于X,记做X一Y,称X为决定因素。 例如3】设一个职工关系为(职工号,姓名,性别,年龄,积务), 分析:主码:职工号 存在的函数依赖关系: 职工号→姓名,职工号→性别,眼工号→年龄,职工号一职务 定义2:设关系为U),X和Y为属性集U上的子集,若X一Y且X包含Y,称X 一Y为平凡函数依规。 例如:(围工号,性别)一性别,是平凡的函数依赖。 定义3:设一个关系为则U门,X和Y为届性集U上的子集。若X→Y,同时X的一个 真子集X也能够函数决定Y,即X”一Y,则称X部分函数决定Y,或Y部分函数依赖于X, 记数X→Y,否则若不存在一个真子集X”,使得X也能够函数决定Y,则称X完全函数换定 Y。或Y完全函爱依赖于X记做X一Y。X一Y的部分函数依赖也称为局部函数依赖。 例如:设一个教师任课关系为《工号,姓名,眼称,课程号,课程名,课时数,课时 费),假定每个教师可以讲授多门误,每门课可以由多个收师讲授, 分析:主码:《教工号,课程号) 教工号一姓名,教工号一职称 误程号→课程名。课程名一课时数 (职移,课程号)→误封费以上是完全函数依赖 部分依赖:(较工号,课程号)一蛙名等。 定义4:一个关系为RU),X,Y,Z为属性集U上的子集,其中X一Y,Y→Z但Y 一X,Y不包含X,则存在X一乙,称此为传递函数依魏,即X传递函数定ZZ传递函数 依赖于X。 闲如:设一个学生关系为(学号,姓名,性别,系号,系主任名)·要求:每个学生 属于一个系,每个系有许多学生,每个一系都对应唯一的系名和系主任名。 学号一系名,系名一系主任名。则学号一系主任名 定义5:设一个关系为RU),XY,Z为属性集U上的子集,若X→Y,则存在XZ一 YZXZ-Y 1
1 第三章 关系规范化基础 一、要点解析 3.1 数据依赖 定义 1:设一个关系为 R(U),X 和 Y 为属性集 U 上的子集,若对于元组中 X 上的每个 值,都有 Y 上的一个唯一值与之对应,则称 X 和 Y 具有函数依赖关系,并称 X 函数决定 Y, 或称 Y 函数依赖于 X,记做 X→Y,称 X 为决定因素。 例如 3-1 设一个职工关系为(职工号,姓名,性别,年龄,职务)。 分析:主码:职工号 存在的函数依赖关系: 职工号→姓名,职工号→性别,职工号→年龄,职工号→职务 定义 2:设关系为 R(U) ,X 和 Y 为属性集 U 上的子集,若 X→Y 且 X 包含 Y,称 X →Y 为平凡函数依赖。 例如: (职工号,性别)→性别,是平凡的函数依赖。 定义 3:设一个关系为 R(U),X 和 Y 为属性集 U 上的子集,若 X→Y,同时 X 的一个 真子集 X’也能够函数决定 Y,即 X’→Y,则称 X 部分函数决定 Y,或 Y 部分函数依赖于 X, 记做 X→Y,否则若不存在一个真子集 X’,使得 X’也能够函数决定 Y,则称 X 完全函数决定 Y,或 Y 完全函数依赖于 X,记做 X→Y。X→Y 的部分函数依赖也称为局部函数依赖。 例如:设一个教师任课关系为(教工号,姓名,职称,课程号,课程名,课时数,课时 费),假定每个教师可以讲授多门课,每门课可以由多个教师讲授。 分析:主码: (教工号,课程号) 教工号→姓名,教工号→职称 课程号→课程名,课程名→课时数 (职称,课程号)→课时费 //以上是完全函数依赖 部分依赖: (教工号,课程号) →姓名等。 定义 4:一个关系为 R(U),X,Y,Z 为属性集 U 上的子集,其中 X →Y,Y →Z,但 Y →X,Y 不包含 X,则存在 X →Z,称此为传递函数依赖,即 X 传递函数决定 Z,Z 传递函数 依赖于 X。 例如:设一个学生关系为(学号,姓名,性别,系号,系主任名)。要求:每个学生只 属于一个系,每个系有许多学生,每个一系都对应唯一的系名和系主任名。 学号→系名,系名→系主任名,则学号→系主任名 定义 5:设一个关系为 R(U),X,Y,Z 为属性集 U 上的子集,若 X →Y,则存在 XZ → YZ,XZ →Y

例如:教工号一姓名,则(教工号,课程号)一姓名, 若:职工号→职务,则(眼工号,性别)一(眼务,性刚) 定义6若一个关系为则U)X和Y为U的子集,若X→Y,并且为完全非平凡函数依 懒,同时Y为单属性,则称X一Y为R的最小函量依赖。由R中所有最小函数依镇构成R 的最小函数依赖集,其中不包含有沉余的传递函数依赖。 例如:设一个关系为:R刷A,B,CD,它的函数依赖集为FD-A一BB一C,A一C,B一 D,判斯它是否为R的最小函数然规集。 分析:因为A一B,B→C是传递依赖,所以FD不是最小的函数依规.改为:FD{A一 B.B→CB→Di 例如:积工关系的最小函数依赖集: FD=职工号一姓名,职工号一性别,职工号一年龄,职工号一职务】 例如:教师任课的最小橘数依赖集: D2={教工号一姓名,教工号→职称。课程号→课程名。课程号一→课时数。(职移,课 程号)→课时费: 例如:学生关系的最小函数依赖集: D3-{学号一姓名,学号一性别,学号一系号,学号一系名,学号一系主任 定义7:设一个关系为U),X为U的一个子集,若X能够函数决定U中的每个属性, 并且X的任何真子集都不能函数决定U中的每个属性,则称X为关系R的候透码。 例如,P55,例3,-7 例3-8P56 小结函数依载的常用规则:P57 (1)自反性(2)增广性〔3)传递性(4)合并性《5)分解性(6)伪传递性(7)复 合性(8)自增性 32关系规范化 一,第一范式INF) 关系就悬一范式 二,第二范式(2NF 去掉关系中非主属性对候选码的部分依机。则称该关系是符合第二范式的关系。 例如,11P60 得出: 若一个关系中所有候选码都是单属性,则设不存在部分依赖,满足第一范式也就满足了 第二范式。只有出现复合候选码时才可能存在部分函数依镇。通过分解达到第二藏式。 二范式的分解方法: 找出对侯透码部分依赖的非主属性所依赖的键码的真子集,然后把这个真 2
2 例如: 教工号→姓名,则(教工号,课程号) →姓名, 若:职工号→职务,则(职工号,性别) →(职务,性别) 定义 6 若一个关系为 R(U),X 和 Y 为 U 的子集,若 X →Y,并且为完全非平凡函数依 赖,同时 Y 为单属性,则称 X →Y 为 R 的最小函数依赖。由 R 中所有最小函数依赖构成 R 的最小函数依赖集,其中不包含有冗余的传递函数依赖。 例如:设一个关系为:R(A,B,C,D),它的函数依赖集为 FD={A →B,B →C,A →C,B → D},判断它是否为 R 的最小函数依赖集。 分析:因为 A →B,B →C 是传递依赖,所以 FD 不是最小的函数依赖。改为:FD={A → B,B→C,B →D}. 例如:职工关系的最小函数依赖集: FD1={职工号→姓名,职工号→性别,职工号→年龄,职工号→职务} 例如:教师任课的最小函数依赖集: FD2={教工号→姓名,教工号→职称,课程号→课程名,课程号→课时数,(职称,课 程号) →课时费} 例如:学生关系的最小函数依赖集: FD3={学号→姓名,学号→性别,学号→系号,学号→系名,学号→系主任} 定义 7:设一个关系为 R(U),X 为 U 的一个子集,若 X 能够函数决定 U 中的每个属性, 并且 X 的任何真子集都不能函数决定 U 中的每个属性,则称 X 为关系 R 的候选码。 例如:P55,例 3-7 例 3-8 P56 小结函数依赖的常用规则:P57 (1)自反性(2)增广性(3)传递性(4)合并性(5)分解性(6)伪传递性(7)复 合性(8)自增性 3.2 关系规范化 一、第一范式(1NF) 关系就是一范式 二、第二范式(2NF) 去掉关系中非主属性对候选码的部分依赖。则称该关系是符合第二范式的关系。 例如 3-11P 60 得出: 若一个关系中所有候选码都是单属性,则就不存在部分依赖,满足第一范式也就满足了 第二范式。只有出现复合候选码时才可能存在部分函数依赖。通过分解达到第二范式。 二范式的分解方法: 找出对侯选码部分依赖的非主属性所依赖的键码的真子集,然后把这个真

子集与所有相应的非主属性结合成一个新的关系:对健码完全依镇的所有非主属性 则与健列组成另一个新关系。 三,第三范式(3NF 消除掉关系R中丰主属性对候选码的传递依规,则移该关系是符合第三范式的。 例如:P63,例312 四,BC范式(BCN 若一个关系为(U),它是满足第一范式的,当R中不存在任何属性对候选码的传递函 数依赖时,则称R是符合CNF的: 二、典型例题 P70书上的课后习题就是该章的典型例题。 课后练习答案如下: 1.X一Y,决定因煮 2、非平凡函数依粮,平凡 玉、非平凡,完全 4、XZ 5、X→YZ,合并性 6、X,候选码 7、(A.C2 8、A1 9、(A,CG1.3 10. 第三,无枫连接,函数依赖 11. 属性,元组。新关系 12. 数据沉余,操作异常 13. 第一,3 14 第一,2 15. 2,2 16. 17 BC
3 子集与所有相应的非主属性结合成一个新的关系;对键码完全依赖的所有非主属性 则与键码组成另一个新关系. 三、第三范式(3NF) 消除掉关系 R 中非主属性对候选码的传递依赖,则称该关系是符合第三范式的。 例如:P63,例 3-12 四、BC 范式(BCNF) 若一个关系为 R(U),它是满足第一范式的,当 R 中不存在任何属性对候选码的传递函 数依赖时,则称 R 是符合 BCNF 的。 二、典型例题 P70 书上的课后习题就是该章的典型例题。 课后练习答案如下: 1、 X→Y,决定因素 2、 非平凡函数依赖,平凡 3、 非平凡,完全 4、 X,Z 5、 X→YZ,合并性 6、 X,候选码 7、 (A,C),2 8、 A,1 9、 (A,C,G),3 10、 第三,无损连接,函数依赖 11、 属性,元组,新关系 12、 数据冗余,操作异常 13、 第一,3 14、 第一,2 15、 2,2 16、 二 17、 BC