所以我有一个与 FD 的关系模式,如下所示:
R(A,B,C,D): AB -> C, B -> D, CD -> A, AD -> B
现在我试图找出所有违反 BCNF 的行为,然后分解表格。我计算了所有 FD 的左侧并发现了这一点:
AB+ = {A, B, C, D}
B+ = {B, D} <- violation
CD+ = {C, D, A, B}
AD+ = {A, D, B, C}
所以我把表格分解成这样:
R1 (B, D)
R2 (A, B, C)
唯一的问题是我不确定这是否是我在分解表格时所要做的全部,或者我是否必须做更多。我主要对 AB、CD 和 AD 部分感到困惑。