确定功能依赖关系和候选关键字

时间:2017-04-28 11:36:48

标签: database functional-dependencies

我在掌握功能依赖的概念时遇到了麻烦。 例如,我们有一张表:

 A  B  C   D    
|1| 1| 10| 10|
|1| 2| 0| 10|
|1| 3| 0| 10|
|1| 4| 0| 10|
|1| 5| 10| 20|
|1| 6| 0| 20|
|1| 7| 0| 20|
|1| 8| 0| 20|
|1| 9| 0| 20|
|1|10|150| 170|
|2| 1| 10| 10|

我假设的函数依赖性是B-> D;但是B不是唯一的。我缺少更多功能依赖吗?这是否意味着B也是候选键?

1 个答案:

答案 0 :(得分:0)

功能依赖性与函数的数学概念有关。非正式地,对于任何给定的输入,我们必须能够确定一个且仅一个输出。

您在识别B->D时是正确的,尽管这不是唯一支持的FD。 B->C遵循相同的模式。您还指出B不是唯一的,因此B不是候选键。它也不确定整个关系 - 具体而言,它不确定AAB一起形成一个复合候选键。