第 6 章 关系数据库理论引用
1 .理解并给出下列术语的定义:
函数依赖、部分函数依赖、完全函数依赖、传递依赖、候选码、主码、外码、全码( All 一
key )、1 NF 、ZNF 、3NF 、BcNF 、多值依赖、 4NF 。
定义 1:设 R(U)是属性集 U 上的关系模式。 X,Y 是属性集 U 的子集。若对于 R(U)的任意
一个可能的关系 r,r 中不可能存在两个元组在 X 上的属性值相等, 而在 Y 上的属性值不等,
则称 X 函数确定 Y 或 Y 函数依赖于 X,记作 X Y 。(即只要 X 上的属性值相等, Y 上的值
一定相等。)
术语和记号:
X Y ,但 Y 不是 X 的子集,则称 X Y 是非平凡的函数依赖。若不特别声明,总是讨论非
平凡的函数依赖。
X Y ,但 Y 是 X 的子集,则称 X Y 是平凡的函数依赖。
若 X Y,则 X 叫做决定因素 (Determinant) 。
若 X Y, Y X,则记作 X Y。
若 Y 不函数依赖于 X,则记作 X Y。
定义 2:在 R(U) 中,如果 X Y ,并且对于 X 的任何一个真子集 X’,都有 X’ Y,则称 Y
对 X 完全函数依赖
若 X Y ,但 Y 不完全函数依赖于 X ,则称 Y 对 X 部分函数依赖
定义 3:若关系模式 R 的每一个分量是不可再分的数据项, 则关系模式 R 属于第一范式 (1NF) 。
定义 4:若关系模式 R∈1NF,且每一个非主属性完全函数依赖于码, 则关系模式 R∈2NF 。
(即 1NF 消除了非主属性对码的部分函数依赖则成为 2NF)。
定义 5:关系模式 R<U ,F> 中若不存在这样的码 X、属性组 Y 及非主属性 Z(Z 不是 Y 的子
集)使得 X Y,Y X,Y Z 成立,则称 R<U, F>∈3NF。
定义 6:关系模式 R<U ,F>∈ 1NF 。若 X Y 且 Y 不是 X 的子集时 ,X 必含有码,则 R<U ,
F>∈BCNF 。
定义 7:关系模式 R<U,F>∈ 1NF,如果对于 R 的每个非平凡多值依赖 X Y(Y 不是 X 的
子集, Z=U-X-Y 不为空 ), X 都含有码,则称 R<U ,F>∈4NF。
2.建立一个关于系、学生、班级、学会等诸信息的关系数据库。
学生:学号、姓名、出生年月、系名、班号、宿舍区。
班级:班号、专业名、系名、人数、入校年份。
系:系名、系号、系办公地点、人数。
学会:学会名、成立年份、办公地点、人数。
语义如下: 一个系有若干专业, 每个专业每年只招一个班,每个班有若干学生。一个系
的学生住在同一宿舍区。 每个学生可参加若干学会, 每个学会有若干学生。 学生参加某学会
有一个入会年份。
请给出关系模式,写出每个关系模式的极小函数依赖集,指出是否存在传递函数依赖,
对于函数依赖左部是多属性的情况讨论函数依赖是完全函数依赖, 还是部分函数依赖。 指出
各关系模式的候选码、外部码,有没有全码存在 ?
解: (1)关系模式如下:
学生: S(Sno,Sname,Sbirth ,Dept,Class,Rno)
班级: C(Class,Pname,Dept,Cnum,Cyear)
系: D(Dept,Dno,Office ,Dnum)
学会: M(Mname ,Myear,Maddr,Mnum)
(2) 每个关系模式的最小函数依赖集如下:
A 、学生 S (Sno,Sname,Sbirth ,Dept,Class,Rno) 的最小函数依赖集如下 :Sno Sname,
Sno Sbirth,Sno Class,Class Dept,DEPT Rno
传递依赖如下:
由于 Sno Dept,而 Dept Sno ,Dept Rno(宿舍区)
所以 Sno 与 Rno 之间存在着传递函数依赖。
由于 Class Dept,Dept Class,Dept Rno
所以 Class 与 Rno 之间存在着传递函数依赖。
由于 Sno Class,Class Sno,Class Dept
所以 Sno 与 Dept 之间存在着传递函数依赖。
B、班级 C(Class,Pname,Dept,Cnum,Cyear)的最小函数依赖集如下 :
Class Pname,Class Cnum,Class Cyear, Pname Dept.
由于 Class Pname,Pname Class,Pname Dept
所以 C1ass 与 Dept 之间存在着传递函数依赖。
C、系 D(Dept ,Dno,Office ,Dnum)的最小函数依赖集如下:
Dept Dno,Dno Dept, Dno Office ,Dno Dnum
根据上述函数依赖可知, Dept 与 Office ,Dept 与 Dnum 之间不存在传递依赖。
D、学会 M(Mname ,Myear, Maddr,Mnum) 的最小函数依赖集如下:
Mname Myear,Mname Maddr,Mname Mnum
该模式不存在传递依赖。
(3) 各关系模式的候选码、外部码,全码如下:
A 、学生 S 候选码: Sno;外部码: Dept、Class;无全码
B、班级 C 候选码: Class;外部码: Dept;无全码
C、系 D 候选码: Dept 或 Dno;无外部码;无全码
D、学会 M 候选码: Mname;无外部码;无全码
7.下面的结论哪些是正确的 ? 哪些是错误的 ? 对于错误的请给一个反例说明之。
(1)任何一个二目关系是属于 3NF。
答:正确。因为关系模式中只有两个属性,所以无传递。
(2)任何一个二目关系是属于 BCNF.
答:正确。按 BCNF 的定义,若 X Y,且 Y 不是 X 的子集时,每个决定因素都包含码,
对于二目关系决定因素必然包含码。详细证明如下: (任何二元关系模式必定是
BCNF )。
证明:设 R 为一个二目关系 R(A1 ,A2) ,则属性 A1 和 A2 之间可能存在以下几种依
赖关系:
A 、A1 A2 ,但 A2 A1,则关系 R 的码为 A1 ,决定因素都包含码, 所以,R 是 BCNF 。
B、A1 A2,A2 A1,则关系 R 的码为 A2,所以决定因素都包含码, R 是 BCNF 。
包含码。 R 是 BCNF 。C、R 的码为 (A1 ,A2) (即 A1 A2, A2 A1 ),决定因素
知识梳理
https://blog.csdn.net/qq_41523096/article/details/86386229
点击直达