数据库-3NF

若关系模式R(U,F) 中不存在这样的码X, 属性组Y及非主属性Z(Z⊈Y) 使得X→Y,(Y↛X)Y→Z成立,则关系模式R∈3NF。

即当2NF消除了非主属性对码的传递函数依赖,则称为3NF。

例如:FIRST1∉3NF, 因为在分解后的关系模式FIRST1中有Sno → Status,Status → City, 存在着非主属性City传递依赖于码Sno。 若此时将FIRST1继续分解为:

FIRST11 (Sno,Sname,Status)∈3NF

FIRST12 (Status,City)∈3NF

通过上述分解,数据库模式FIRST转换为FIRST11(Sno,Sname,Status),FIRST12(Status, City),FIRST2(Sno,Pno,Qty)3个子模式。由于这3个子模式都达到了3NF, 因此称分解后的数据库模式达到了3NF。

可以证明,3NF的模式必是2NF的模式。产生冗余和异常的两个重要原因是部分依赖和传递依赖。因为3NF模式中不存在非主属性对码的部分函数依赖和传递函数依赖,所以具有较好的性能。对于非3NF的1NF、2NF来说,其性能弱,一般不宜作为数据库模式,通常要将它们变换成为3NF或更高级别的范式,这种变换过程称为“关系模式的规范化处理”。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

iamphp

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值