我理解数据库中函数依赖的概念,但是当它归结为这样的格式时,我似乎无法理解它。
**Relation:**
A B C
a1|b1|c1
a2|b1|c1
a1|b2|c2
a1|b1|c2
a3|b2|c1
a2|b1|c2
这种关系中存在哪些功能依赖?
我理解数据库中函数依赖的概念,但是当它归结为这样的格式时,我似乎无法理解它。
**Relation:**
A B C
a1|b1|c1
a2|b1|c1
a1|b2|c2
a1|b1|c2
a3|b2|c1
a2|b1|c2
这种关系中存在哪些功能依赖?
功能依赖保存/应用于数据库DESIGN。
它们不“存在于关系中”。可以说一个关系满足了一些[set of] 函数依赖,但是说函数依赖“存在于一个关系中”是没有意义和混乱的。
正如维克多或多或少指出的那样,您的示例关系仅满足平凡的 FD {ABC} -> {ABC}。
至于你的另一个问题,“这个关系是什么范式”,这个问题再次完全没有意义和困惑,因为“处于某种范式”的属性仅适用于设计,而不适用于某些特定的关系值. 在关系方面:只有关系变量可以是某种正常形式,这取决于应该包含哪些 FD,但关系值不能具有这样的属性。
因此,假设您确实在谈论 [the declaration of] 一个带有标题 {ABC} 的关系变量,其中没有非平凡的 FD(即只有 {ABC} -> {ABC} 成立),这个关系变量位于至少在 BC 范式中。
如果没有连接依赖项,那么您的 relvar 也是第六范式(不,这不是计数错误)。
没有了。
函数依赖意味着,在消除涉及依赖列和行列式列的任何重复项之后,您可以将 anUNIQUE
粘贴到行列式列上。例如,因为出现两次UNIQUE(A,B)
而不起作用,因为出现两次而失败,因为出现两次而失败。a1,b1
UNIQUE(A,C)
a1,c2
UNIQUE(B,C)
b1,c1