0

我理解数据库中函数依赖的概念,但是当它归结为这样的格式时,我似乎无法理解它。

**Relation:**
A  B  C
a1|b1|c1
a2|b1|c1          
a1|b2|c2
a1|b1|c2
a3|b2|c1
a2|b1|c2    

这种关系中存在哪些功能依赖?

4

2 回答 2

1

功能依赖保存/应用于数据库DESIGN

它们不“存在于关系中”。可以说一个关系满足了一些[set of] 函数依赖,但是说函数依赖“存在于一个关系中”是没有意义和混乱的。

正如维克多或多或少指出的那样,您的示例关系仅满足平凡的 FD {ABC} -> {ABC}。

至于你的另一个问题,“这个关系是什么范式”,这个问题再次完全没有意义和困惑,因为“处于某种范式”的属性仅适用于设计,而不适用于某些特定的关系值. 在关系方面:只有关系变量可以是某种正常形式,这取决于应该包含哪些 FD,但关系不能具有这样的属性。

因此,假设您确实在谈论 [the declaration of] 一个带有标题 {ABC} 的关系变量,其中没有非平凡的 FD(即只有 {ABC} -> {ABC} 成立),这个关系变量位于至少在 BC 范式中。

如果没有连接依赖项,那么您的 relvar 也是第六范式(不,这不是计数错误)。

于 2011-12-15T11:08:24.547 回答
0

没有了。

函数依赖意味着,在消除涉及依赖列和行列式列的任何重复项之后,您可以将 anUNIQUE粘贴到行列式列上。例如,因为出现两次UNIQUE(A,B)而不起作用,因为出现两次而失败,因为出现两次而失败。a1,b1UNIQUE(A,C)a1,c2UNIQUE(B,C)b1,c1

于 2011-11-17T13:03:08.960 回答