我非常了解BCNF
的概念,所以有人以这种格式给我一个关系,比如
R = {P, Q, S}
F = {PQ->S, PS->Q, QS->P}
我可以很容易地说这种关系在BCNF中,因为左侧的所有键也是超级键。但如果我得到一个真实世界的问题,如下图:
然后我将如何确定此架构是否在BCNF
中?如何从架构创建功能依赖关系,然后找到super keys
?谁能给我一些解决这些问题的指示?
如果您将架构转换为:
Code -> City, State
Flightnum -> .....
model -> ...
cid -> ....
Cid, flightnum, date -> ...
然后显然这不是在BCNF,但答案是以下模式是BCNF,我无法理解他们是如何得出它的方程式的。
答案 0 :(得分:1)
非正式地,如果所有关系都在BCNF中,则模式在BCNF中。
如何从架构创建功能依赖项。 。
没有任何其他上下文,我假设图像中带下划线的属性是主键中的属性。
因此,我将该图片视为
code->city, state cid->name, city etc.
这些是你的功能依赖。