1. 设关系模式R(A,B,C,D)和R上的函数依赖集F={AB→D,D→C},R的候选码为AB。
试求下列问题:
(1)关系R属于第几范式?
(2)如果关系R不属于BCNF,请将关系R逐步分解为BCNF。
要求:写出达到每一级范式的分解过程。
(1) 由于存在非主属性C传递函数依赖于候选码AB,因此关系R属于2NF。
(2) 分解为R1(A,B,D)和R2(C,D)。
消除传递函数依赖。
2.现有关系模式:R(A,B,C,D,E,F),其中AB为码,存在函数依赖B→C,A→D,D→E,D→F。
试求下列问题:
(1)关系R属于第几范式?
(2)如果关系R不属于BCNF,请将关系R逐步分解为BCNF。
要求:写出达到每一级范式的分解过程。
(1) 由于存在非主属性C、D部分函数依赖于候选码AB,因此关系R属于1NF。
(2) R分解为R1(A,D,E,F)和R2(B,C)。
R1满足2NF(0.5分),R2满足BCNF
R1需要继续分解:R3(A,D)和R4(D,E,F)。R3、R3都满足BCNF。
3.现有如下关系模式: R(A#,B#,C,D,E) 其中:A#B#组合为码 R上存在的函数依赖有
A#B#→E,B#→C,C→D
(1) .该关系模式满足2NF吗?为什么?
(2).如果将关系模式R分解为:
R1(A#,B#,E)
R2(B#,C,D) 指出关系模式R2的码,并说明该关系模式最高满足第几范式?(在1NF~BCNF之内)。
(3).将关系模式R分解到BCNF。
(1)B#→C,存在非主属性C对码A#B#的部分依赖,所以R不满足2NF
(2)R2满足2NF,但不满足3NF,因为B#→C,C→D,存在D对B#的传递依赖
(3)R1满足BCNF,R2分解:R4(B#,C), R5(C,D)
4.设有关系R和函数依赖F:
R(X,Y,Z),F = { Y→Z,XZ→Y}。试求下列问题:
(1)关系R属于第几范式?
(2)如果关系R不属于BCNF,请将关系R逐步分解为BCNF。
要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。
(1)R满足3NF,但是不满足BCNF,因为候选关键字为XY和XZ,不存在非主属性,但是存在着主属性Z对码XY的部分依赖(因为 Y→Z )。
(2)分解:
R1(X,Z), XZ为码
R2(Y,Z),F={ Y→Z}
消除了部分函数依赖。
5.设有关系R和函数依赖F:
R(A,B,C,D,E),F = { ABC→DE,BC→D,D→E }。
试求下列问题:
(1)关系R的侯选码是什么?R属于第几范式?并说明理由。
(2)如果关系R不属于BCNF,请将关系R逐步分解为BCNF。
要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。
- R的候选码为ABC
R属于1NF,因为非主属性D对ABC存在非完全函数依赖
- 对R进行分解
R1(ABC)满足BCNF范式,
R2(BCDE)满足2NF 消除了非完全函数依赖
对R2进行分解 R21(BCD) R22(DE) 消除了传递函数依赖且R21和R22都满足BCNF范式
6. 设有关系R和函数依赖F:
R(W,X,Y,Z),F = { X→Z,WX→Y }。
试求下列问题:
(1)关系R属于第几范式?
(2)如果关系R不属于BCNF,请将关系R逐步分解为BCNF。
要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。
- 属于1NF,因为非主属性Z对WX存在非完全函数依赖
- R可以分解为R1(W,X,Y)属于BCNF范式
R2(X,Z)消除部分函数依赖