范式规范化 4.26数据库课程

本文探讨了数据库理论中的关键概念,包括码、候选码和主码的关系,以及不同范式(1NF、2NF、3NF、BCNF)的判断。通过实例分析了如何确定候选码,并解释了每个实例所属的范式。内容涵盖了关系数据库设计的基本原则,强调了解决部分函数依赖和传递依赖的重要性。
摘要由CSDN通过智能技术生成

需要理清码、候选码、主码间的关系, 主 码 ⊆ 候 选 码 主码 \subseteq 候选码 ⊆ 码 \subseteq 码

一、
Y(X1,X2,X3,X4)
(X1,X2)→X3
X2→X4
侯选码?
属于第几范式?


候选码可挨个进行尝试
X 1 ↛ X 3 X1 \not\rightarrow X3 X1X3 X 2 ↛ X 3 X2 \not\rightarrow X3 X2X3 X 3 ↛ X 1 X3 \not\rightarrow X1 X3X1 X 4 ↛ X 1 X4 \not\rightarrow X1 X4X1
(X1,X2)→X3、(X1,X2)→X4 (X2→X4)
( X 1 , X 3 ) ↛ X 4 (X1,X3) \not\rightarrow X4 (X1,X3)X4
( X 1 , X 4 ) ↛ X 3 (X1,X4) \not\rightarrow X3 (X1,X4)X3
( X 2 , X 3 ) ↛ X 1 (X2,X3) \not\rightarrow X1 (X2,X3)X1
( X 2 , X 4 ) ↛ X 1 (X2,X4) \not\rightarrow X1 (X2,X4)X1
( X 3 , X 4 ) ↛ X 1 (X3,X4) \not\rightarrow X1 (X3,X4)X1
所以候选码为(X1,X2)

因为(X1,X2)→X4, X2→X4,即非主属性X4对候选码(X1,X2)为部分函数依赖。不属于2NF,属于1NF



二.
R(A,B,C,D)
F={AB→D,AC→BD,B→C}
侯选码?
最高属于第几范式?


候选码同样可挨个尝试进行
F相当于(A,B)→D、(A,C)→B、(A,C)→D、B→C

因为(A,B)→D、B→C,所以(A,B)是候选码
因为(A,C)→B、(A,C)→D,所以(A,C)是候选码
因此非主属性为D

不存在非主属性部分依赖于码,属于2NF;
且不存在传递关系,属于3NF;
B是决定因素但不包含码,所以不属于BCNF

最高属于3NF



三、
R(X,Y,Z,W)
F={Y←→W,XY→Z}
侯选码?
最高属于第几范式?


F相当于Y→W、W→Y、(X,Y)→Z,且Y与W等价,则还有(X,W)→Z

因为(X,Y)→Z、Y→W,所以(X,Y)是候选码
因为(X,W)→Z、W→Y,所以(X,W)是候选码
因此非主属性为Z

不存在非主属性部分依赖于码,属于2NF;
存在 (Y→W、(X,Y)→Z,即(X,W)→Z) 但Y与W等价,仍属于3NF;
W是决定因素但不包含码,所以不属于BCNF

最高属于3NF

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值