鉴于以下两种说法:
null
S1: Every table with two single-valued attributes is in 1NF, 2NF, 3NF and BCNF. S2: AB->C, D->E, E->C is a minimal cover for the set of functional dependencies AB->C, D->E, AB->E, E->C.
以下哪项是正确的?
(A) S1为真,S2为假。 (B) S1和S2都是真的。 (C) S1为假,S2为真。 (D) S1和S2都是假的。 答复: (A) 说明:
S1: Every table with two single-valued attributes is in 1NF, 2NF, 3NF and BCNF.
关系模式R在 BCNF 如果在每个非平凡的函数依赖项X->Y中,X是超级键。如果我们能证明这个关系在BCNF中,那么默认情况下它也会在1NF,2NF,3NF中。
设R(AB)为两属性关系,则
- 如果{A->B}存在,那么BCNF因为{A}+=AB=R
- 如果{B->A}存在,那么BCNF因为{B}+=AB=R
- 如果{A->B,B->A}存在,那么BCNF因为A和B现在都是超级键。
- 如果{No non-private Functional Dependency},则默认为BCNF。
因此证明了具有两个单值属性的关系在BCNF中,因此它也在1NF,2NF,3NF中。
因此S1是正确的。
S2: AB->C, D->E, E->C is a minimal cover for the set of functional dependencies AB->C, D->E, AB->E, E->C.
正如我们所知,最小覆盖是在函数依赖集中消除冗余函数依赖和无关属性的过程。
所以F={AB->C,D->E,AB->E,E->C}的每个依赖项都应该隐含在最小覆盖中。
正如我们所看到的,由于{AB->C,D->E,E->C}
因此,S2是错误的。
这一解释是由 曼尼什·雷。
在这里了解有关标准形式的更多信息:
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END