gpt4 book ai didi

mysql - 如何判断一个模式是否在 BCNF 中

转载 作者:行者123 更新时间:2023-11-29 11:55:09 26 4
gpt4 key购买 nike

我非常理解BCNF的概念,所以有人给了我这样一种格式的关系

R = {P, Q, S}
F = {PQ->S, PS->Q, QS->P}

我可以很容易地说这种关系是 BCNF,因为左侧的所有键也是 super 键。但是如果我遇到像下图这样的现实世界问题: enter image description here

那么我如何确定这个模式是否在BCNF中?我如何从架构中创建功能依赖关系,然后找到 super 键?谁能给我一些解决此类问题的指示?

如果将架构​​转换为:

Code -> City, State
Flightnum -> .....
model -> ...
cid -> ....
Cid, flightnum, date -> ...

那么显然这不在 BCNF 中,但答案是以下模式是 BCNF,我无法理解他们是如何推导出它的方程的。

最佳答案

通俗地说,如果一个模式的所有关系都在 BCNF 中,那么该模式就在 BCNF 中。

How will I create functional dependencies from the schema . . .

在没有任何其他上下文的情况下,我假设图像中带下划线的属性是主键中的属性。

所以我会读到那张图片是这样说的

code->city, statecid->name, cityetc.

这些是您的功能依赖项。

关于mysql - 如何判断一个模式是否在 BCNF 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33327994/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com