作业帮 > 综合 > 作业

sql数据库习题,规范化过程中的范式及模式分解问题

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/17 22:50:33
sql数据库习题,规范化过程中的范式及模式分解问题
请证明以下两题:
1.设关系模式R(ABCD),F是R上成立的FD集,F={AB→CD,A→D}。
(1) 试说明R不是2NF模式的理由。
(2) 试把R分解成2NF模式集。
2.设关系模式R(ABC),F是R上成立的FD集,F={C→B,B→A}。
⑴ 试说明R不是3NF模式的理由。
⑵ 试把R分解成3NF模式集。
(本人菜鸟,请尽可能详细,谢谢!)
(1) 试说明R不是2NF模式的理由。存在部分依赖,所以R不是2NF   (2) 试把R分解成2NF模式集。     R1(ABC),R2(AD)  说明:消除部分依赖关系2.(1)R存在传递依赖。(2)R1(CB),R2(BA)  说明:消除传递依赖关系
再问: 大神,你好,谢谢回答,请问可否更具体一些。第一小问请告诉我谁和谁存在部分依赖,第二小问麻烦写出具体的分解过程。请按论述题的程度来回答,万分感谢!如果够详细一定会采纳的!
再答: 1.
(1)关系的主码为(AB),D对主码存在部分依赖关系。所以R不是2NF
(2)分解过程(消除部分依赖关系):将主码的各个子集组成新的关系,以决定因子作为主码:
分R1(ABC),主码为(AB),
R2(AD)主码为(A)
2.
(1)关系的主码为(C),因为C→B,B→A,所以A对主码(C)存在传递依赖,所以不是第三范式
(2)分解过程(消除传递依赖关系):
将每个不直接依赖于主码的属性,从关系中取出来,组成一个新的关系,将决定因子作为主码。
A的决定因子为B,所以分解为 R2(BA),主码为(B),B的决定因子为C,所以分解为R1(CB),主码为(C)