数据库:判断范式速成(萌新进!)

判断范式,只需要按照如下流程图进行判断即可:

 第一步,就是求出关系模式中的候选码:

eg:关系模式R(A,B,C,D),其依赖集为F={B-->D,D-->B,AB-->C}

先把依赖项左边的属性和右边的属性分离出来:

依赖项左边的属性:{B,D,A,B}

依赖项右边的属性:{D,B,C}

相同的属性去除,左边剩下{A,},右边剩下{C}

此时,A肯定是候选码,C肯定不是候选码(只在左边出现的一定是候选码,只在右边出现的一定不是候选码。 )

由题:AB-->C,A-->A,B-->B,所以A-->u(所有),所以AB也是候选码

同样的,D-->B,AD-->u(所有),所以AD也是候选码。

第二步,判断范式:

AB,AD候选码,在关系模式中只有C不在候选码中,所以C是非键属性

在依赖集中,只有AB-->C,所以C完全依赖于候选键AB,满足第二范式。

继续往下看,AB-->C已经是直接推出了,所以不存在传递依赖,满足第三范式。

依赖项左边的B,D都不是候选键,所以不满足BC范式。

则该关系模式最高达到了第三范式。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值