数据库:已知关系模式R(A,B,C,D),F = { B->D, D->B, AB->C }

1:求R的候选码。2:判断R最高属于第几范式。请问这种题目要怎么做呢?求详解,谢谢各位大神了... 1:求R的候选码。
2:判断R最高属于第几范式。

请问这种题目要怎么做呢?求详解,谢谢各位大神了
展开
 我来答
百度网友36183da
2013-03-18 · 超过15用户采纳过TA的回答
知道答主
回答量:82
采纳率:0%
帮助的人:39万
展开全部
1。候选码就是看多少个左边的可以确定出全部的集合
B->D指的是一个B可以唯一确定一个D,AB->C指的是一对AB可以唯一确定一个C
所以一对AB可以确定ABCD,但是A和B并不能单独确定出ABCD,所以AB就是候选码
2。1NF指的是所有数据项不可分
2NF指的是所有属性完全函数依赖于主码
3NF指的是不存在属性对主码的传递依赖
这个R最高属于1NF,因为主码是AB,所以有AB->D,而题目本身有B->D,所以D是部分函数依赖于主码的,所以不满足2NF,所以最高只能为1NF
追问
我也觉得是1NF,但是答案是第三方式。
参考答案是这样描述的:
非主属性C完全函数依赖于主码,R属于2NF,又非主属性C没有传递函数依赖与R的主码,所以R最高属于3NF。

我还是不理解了,到底哪个对呢?
追答
问题是R根本不是2NF。不满足所有非主属性完全依赖于主码,比如D就不完全依赖于主码,所以R连2NF都不是
老暴哥123
推荐于2018-03-28 · TA获得超过181个赞
知道答主
回答量:30
采纳率:50%
帮助的人:3.3万
展开全部
判断2NF有没有部分依赖或3NF有没有传递函数依赖是相对于非主属性而言的,而本题中它的候选码是(A,B)和(A,D),非主属性只有C,很显然C既没有部分函数依赖也没有传递函数依赖,所以该关系属于3NF。接下来我们需要判断该关系是否属于BCNF(在关系模式R中,如果每一个决定因素都包含码,则R属于BCNF),由于决定因素B或D都没有包含码,所以没达到BCNF。所以判断该关系模式R最高属于3NF。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
手机用户34316
2024-04-13
知道答主
回答量:2
采纳率:0%
帮助的人:215
展开全部
候选码是{A,B} {A,D} 非主属性只有C
两个候选码是并列的 ABD都不可以单独决定C 所以不存在非主属性的部分函数依赖和传递函数依赖 所以能达到3NF
但是主属性D 可以由{A,B}的B单独决定 所以存在主属性的部分函数依赖 所以达不到BCNF
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式