作业:
判断范式,若范式较低则分解到 BCNF
(1)R(ABCD),F={B →D,D →B,AB →C}
(2)R(ABC),F={A →B,B →A,C →A}
(3)R(ABCD),F={A →C,D →B}
(4)R(ABCD),F={A →C,CD →B}
1 R(ABCD),F={B →D,D →B,AB →C}
解:
(1)码是 AB,AD
非主属性为 C
C 对码完全函数依赖
C 不传递依赖码
B →D,D →B 的决定因素中不含码
是 3NF
注意:一定要把所有的码都找出来,才能判断出非主属性
码 AB 与码 A,B 是完全不同的意思,注意区别
(2)根据算法 6.5 找出函数依赖 B →D
分解 R 为 S1={B,D}
S2={A,B,C}
2 R(ABC),F={A →B,B →A,C →A}
解:
(1)码是 C,非主属性为 A,B
A,B 对码完全函数依赖
C →A , A →B
是 2NF
(2)根据算法 6.5 找出函数依赖 A →B
分解 R 为 S1={A,B}
S2={A,C}
3 R(ABCD),F={A →C,D →B}
解:
(1)码是 AD,非主属性为 C,B
存在部分函数依赖
是 1NF
(2)
将 F 用最小函数依赖代替,处理后的结果仍然记为 F
F={A →C,D →B}
找出不在 F 中出现的属性,把这样的属性构成一个关系模式。把这些属性从 U 中去掉,剩
余的属性记为 U
U={A →C,D →B}