学习关系规范化可以有人为我清除这一点吗?

时间:2012-12-03 18:25:35

标签: database normalization database-normalization

我一直在阅读关于这个主题的某些工作但是这个符号对我来说没有意义

Relation R(A,B,C,D,E,F,G,H) with the following functional dependencies:
Fd1: A → BCD
Fd2: AD → E
Fd3: EFG → H
Fd4: F → GH

有人可以简单地解释这是什么意思,或者如果有某个指南可以让我知道吗?提前谢谢!

1 个答案:

答案 0 :(得分:3)

R(A,B,C,D,E,F,G,H)指的是一个关系及其组成字段(A-H)。

函数依赖(注释为A -> B)意味着对于单个A值,只有一个B值。

在这种情况下:A -> BCD这意味着对于单个A值,只有一个元组值为BCD。元组只是字段的组合。

因此,让我们看一些示例数据,看看什么是函数依赖,哪些不是函数依赖:

A  |  B  |  C  |  D  |  E
=========================
1  |  a  |  2  |  b  |  3
-------------------------
2  |  a  |  3  |  c  |  4
-------------------------
3  |  a  |  4  |  d  |  5

从上面的基本表中,我们可以推断出以下内容:

  1. A --> B是一个功能依赖,因为对于A的每个值,只有一个B值。
  2. 另一方面,B --> A不是函数依赖,因为对于单个B值(“a”),有多个可能的A(1,2,3)值。
  3. 上述相同的两个结论适用于关于B列的所有其他列,以及由A,C,D和E列组成的元组。
  4. 希望这会有所帮助。如果您更详细地更新您的问题,我可以解决您可能遇到的其他问题。