我在将其分解为 BCNF 时遇到问题:
Relation: R[A E P M N S T L]
FD's:
A -> EM,
A -> L,
M -> ST,
M -> N,
S -> T,
E -> P,
P -> E,
L -> A
这是我过去的一次考试,我真的不知道如何解决它。
我是在 Coursera 上由编写我们课程文献的女士 (Jennifer Widom) 了解到的:
-------------- BCNF ALGORITHM ------------
1. Take a FD that violates BCNF.
2. Decompose the FD to two other relations
3. First relation: The whole FD
4. Second relation: The rest of the Relation + the left hand side of the chosen FD
5. Iterate until all the new relations have key on its left hand side
-------------- BCNF ALGORITHM ------------
And I also tried another one that is basically the same, but written in a different way:
X->Y: R1({X}+), R2(R - {X}+ ; X) (Relation minus {X}+ (XY in this case), plus X.
到目前为止,我在这里:显然,A 是关键,所以它的 FD 已经在 BCNF 中。问题是,我可以擦除任何多余的 FD 吗?如果是这样,拇指规则是什么?
R1(MST) <-- BCNF.
R2(A E P M N L)
R3()
而且不知道该去哪里。