这个 3NF 分解做对了吗?
Is this 3NF decomposition done right?
The relation R(ABCDEF) is given with the following functional dependencies:
A->B
B->C
A->D
A->E,F
E->F
State the strongest normal form this is in and then convert it into third normal form.
我认为关系是第一范式,因为存在部分依赖,而候选键是 A。因此,为了将其转换为 second/third 范式,我将 R(ABCDEF) 分解为
R1(A,B,D,E,F)
R2(B,C)
R3(E,F)
这些不都是第三范式吗?我分解对了吗?
当非主要属性依赖于候选键的适当子集(所谓的部分依赖)时,模式不在 2NF 中(例如参见 [=17=])。由于在您的架构中唯一的候选键是 A
,这是不可能的,因此架构在 2NF 中。
您在 3NF 中的分解不正确,因为在关系 R1(A B D E F)
中依赖性 E->F
成立,属性 F
不是素数且非平凡地取决于行列式不是超级键。
正确的分解是:
R1(A B D E)
R2(B C)
R3(E F)
请注意,在您分解的情况下,R3
包含在 R1
中,这是不可能的。
The relation R(ABCDEF) is given with the following functional dependencies:
A->B B->C A->D A->E,F E->F
State the strongest normal form this is in and then convert it into third normal form.
我认为关系是第一范式,因为存在部分依赖,而候选键是 A。因此,为了将其转换为 second/third 范式,我将 R(ABCDEF) 分解为
R1(A,B,D,E,F)
R2(B,C)
R3(E,F)
这些不都是第三范式吗?我分解对了吗?
当非主要属性依赖于候选键的适当子集(所谓的部分依赖)时,模式不在 2NF 中(例如参见 [=17=])。由于在您的架构中唯一的候选键是 A
,这是不可能的,因此架构在 2NF 中。
您在 3NF 中的分解不正确,因为在关系 R1(A B D E F)
中依赖性 E->F
成立,属性 F
不是素数且非平凡地取决于行列式不是超级键。
正确的分解是:
R1(A B D E)
R2(B C)
R3(E F)
请注意,在您分解的情况下,R3
包含在 R1
中,这是不可能的。