【发布时间】:2013-06-16 02:07:27
【问题描述】:
我的关系如下:
R = (X,Y,C,D)
和功能依赖:
FD = {XY -> CD, YC -> D, D -> X}
我发现候选键是XY,YC,YD。
在这种情况下,我有 3 个候选键......那么当我将关系分解为 BCNF 时如何使用它们?我从来没有用一个以上的键分解关系...
谢谢。
【问题讨论】:
标签: database relational-database relation
我的关系如下:
R = (X,Y,C,D)
和功能依赖:
FD = {XY -> CD, YC -> D, D -> X}
我发现候选键是XY,YC,YD。
在这种情况下,我有 3 个候选键......那么当我将关系分解为 BCNF 时如何使用它们?我从来没有用一个以上的键分解关系...
谢谢。
【问题讨论】:
标签: database relational-database relation
关系 1:(Y,C,D) 关系2:(D,X)
【讨论】:
@KeyM
1.找出违反BCNF的FD
在这种情况下,它的 D->X
2.分解为两个关系R1,R2
R1(D,X) R2(D,休息)
3。重复1,2直到所有的关系都在BCNF中
使用这个我们的解决方案是 R1(Y,C,D) , R2(D,X)
【讨论】: