题目
一.
Y(X1,X2,X3,X4)
(X1,X2)→\rightarrow→X3
X2→\rightarrow→X4
侯选码?
属于第几范式?
二.
R(A,B,C,D)
F={AB→\rightarrow→D,AC→\rightarrow→BD,B→\rightarrow→C}
侯选码?
最高属于第几范式?
三.
R(X,Y,Z,W)
F={Y←\leftarrow←→\rightarrow→W,XY→\rightarrow→Z}
侯选码?
最高属于第几范式?
解
一.
因为 X2→\rightarrow→X4
所以 (X1,X2)→PX4(X1,X2) \stackrel{P}{\rightarrow} X4(X1,X2)→PX4
因为(X1,X2)→X3(X1,X2) \stackrel{}{\rightarrow} X3(X1,X2)→X3
所以(X1,X2)→(X3,X4)(X1,X2) \stackrel{}{\rightarrow} (X3,X4)(X1,X2)→(X3,X4)
因此:候选码:(X1,X2);非主属性:X3,X4。
因为(X1,X2)→\rightarrow→X4, X2→\rightarrow→X4,存在非主属性X4对候选码(X1,X2)的部分函数依赖;
所以不属于2NF。
结论:候选码(X1,X2),属于第一范式。
二.
因为 B→\rightarrow→C
所以(A,B)→(C,D)(A,B) \stackrel{}{\rightarrow} (C,D)(A,B)→(C,D)
因为(A,C)→(B,D)(A,C) \stackrel{}{\rightarrow} (B,D)(A,C)→(B,D)
因此:候选码:(A,B)、(A,C);非主属性:D。
不存在非主属性D对候选码(A,B)、(A,C)的部分函数依赖;
所以属于第三范式。
不属于BCNF 因为B→C,B不包含码
满足BCNF的关系模式有:
- 所有非主属性对每一个码都是完全函数依赖
- 所有主属性对每一个不包含它的码也是完全函数依赖
- 没有任何属性完全函数依赖于非码的任何一组属性
第二题因为C并不是完全依赖于不包含C的码,因为B→\rightarrow→C。
三
因为(X,Y)→\rightarrow→Z ,Y→\rightarrow→W
所以(X,Y)→\rightarrow→(W,Z),(X,Y)是码
因为(X,W)→\rightarrow→X, (X,W)→\rightarrow→W, W→\rightarrow→Y
所以(X,W)→\rightarrow→(X,Y,W),
因为W→\rightarrow→Y,XW→\rightarrow→XY,XY→\rightarrow→Z,所以(X,W)→\rightarrow→Z
所以(X,W)也是码
候选码:(X,Y)、(X,W);非主属性:Z。
属于第二范式,因为Z完全依赖于码(非主属性只有Z)
属于第三范式,因为Z没有传递依赖于码
不属于BC范式 因为W→Y,决定者不包含候选码
所以第三题最高属于第三范式。
这篇博客探讨了数据库的范式理论,通过三个例题详细解释了第一范式、第二范式和第三范式的判断标准。例题中分别分析了候选码、部分函数依赖和传递依赖,帮助读者理解不同范式的特点。
1032

被折叠的 条评论
为什么被折叠?



