- 设有关系 R和函数依赖 F:
R(A,B,C,D,E),F = { ABC→DE,BC→D,D→E }。
试求下列问题:
①关系 R的侯选码是什么?R属于第几范式?并说明理由。(4分)
②如果关系 R不属于 BCNF,请将关系 R逐步分解为 BCNF。(6分)
(1)关系R的候选码是(A,B,C),R∈1NF,因为R中存在非主属性D,E对候选码(A,B,C)的部分函数依赖。
(2)首先消除部分函数依赖
将关系分解为:
R1(A,B,C) (A,B,C)为候选码,
R1中不存在非平凡的函数依赖
R2(B,C,D,E),(B,C)为候选码,
R2的函数依赖集为:F2={(B,C)→D,D→E}
在关系R2中存在非主属性E对候选码(B,C)的传递函数依赖,所以将R2进一步分解:
R21(B,C,D) ,(B,C)为候选码,
R21的函数依赖集为:F21 = {(B,C)→D }
R22(D,E) ,D为候选码,
R22的函数依赖集为:F22 = { D→E }
在R1中已不存在非平凡的函数依赖,在R21、R22关系模式中函数依赖的决定因素均为候选码,所以上述三个关系模式均是BCNF。
这个分解结果唯一吗,我怎么比这个答案多了一个(AE)的函数依赖集