R = {A,B,C,D} 功能依赖性F = {A - > B,B - > C,C - > d}
制作3NF后的处理: 我们得到{{A,B},{B,C},{C,D}}
让我们说X -> A
代表每个功能依赖。
X
表示左侧,A
表示右侧。
我的主要问题是3NF的第二个条件 - X is a superkey
。
所以X
是什么的超级钥匙?
R = {A, B, C, D}
或每个关系的{p>,{3}在3NF?
例如,{A,B}, {B,C} and {C,D}
是超级密钥,也是B
的候选密钥,但不是{B,C}
的超级密钥或候选密钥。
我完全糊涂了。
答案 0 :(得分:0)
如果对于该关系中的每个X -> A
,其中一个条件成立,则关系为3NF:
X
包含A
(即X -> A
是微不足道的功能依赖),或X
是超级密钥,或A-X
的每个元素,A
和X
之间的集合差异,都是主要属性。对于R = {A, B, C, D}
,我们有一个FD B -> C
,以便:
B
不包含C
和B
不是R
的超级密钥,C
不是R
的主要属性。因此,R
并非在3NF中。
但是,如果我们查看R1 = {B, C}
中的B -> C
,那么:
B
不包含C
和B
是R1
的超级密钥,C
不是R1
的主要属性。因此R1
在3NF。
答案 1 :(得分:0)
当我们说“将R标准化为xNF”时,我们的意思是“用xNF中的每个投影/组件替换R”。 R走了;它等于组件的连接。每个组件必须使用自己的FD,超级密钥,CK等满足xNF的条件。