数据库下
4、RELATIONAL DATABASE THEORY
4.1 Functinal Dependency
定义:设一个关系为R(U),X和Y为属性集U上的子集,若对于X上的每个值都有Y上的一个唯一值与之对应,则称X和Y具有函数依赖关系,并称X 函数决定Y,或称Y函数依赖于X,记作X→Y,称X为决定因素。
简单地说,函数依赖就是:知道A可以确切的找到B,这样的函数叫做函数依赖。其实就是单值函数:例如:f(x)=2x(PS:后面会有详细的示例说明)
Trivial FD and NON-Trivial FD
Full FD and PARTIAL FD
Transitive FD
4.2 Identify Functional Dependency
Armstrong’s Axioms(1974)
Algorithm for Computing (X+)闭包
example:
例:已知关系模式R(ABC),F={A→C,B→C},求F+
解:∵U={A,B,C},左部不同的属性集组合有23=8种:
Φ、A、B、C、AB、BC、AC、ABC。
(1)∴Φ→Φ
(2)∵(A)F+=AC
∴A→Φ、A→A、A→C、A→AC。
(3)∵(B)F+=BC
∴B→Φ、B→B、B→C、B→BC。
(4)∵©F+=C
∴C→Φ、C→C。
(5)∵(AB)F+=ABC
∴AB→Φ、AB→AB 、AB→A、AB→B 、AB→C、AB→BC 、AB→AC、AB→ABC 。
(6)∵(BC)F+=BC
∴BC→Φ、BC→BC、BC→B、BC→C。
(7)∵(AC)F+=BC
∴AC→Φ、AC→BC、AC→B、AC→C。
(8)∵(ABC)F+=ABC
∴ABC→Φ、ABC→ABC 、ABC→A、ABC→B 、ABC→C、ABC→BC 、ABC→AB、ABC→AC。
所以F+共有35个具体如下:
∴Φ→Φ、A→∅、A→A、A→C、A→AC
B→Φ、B→B、B→C、B→BC
C→Φ、C→C、 AB→∅、AB→AB 、AB→A、AB→B 、AB→C、AB→BC 、AB→AC、AB→ABC 、
BC→Φ、BC→BC、BC→B、BC→C、
AC→Φ、AC→BC、AC→B、AC→C、
ABC→Φ、ABC→ABC 、ABC→A、ABC→B 、ABC→C、ABC→BC 、ABC→AB、ABC→AC
Finding Candidate Keys from FDs
Meth