概念
概念讲解
========== 概念讲解 ==========
函数依赖(Functional Dependency)
在关系数据库中,函数依赖是指在一个关系模式 R (U,F) 中,属性集 X 和 Y 都是 U 的子集。如果对于关系 r 中的任意两个元组 u 和 v,只要 u 在属性 X 上的值等于 v 在属性 X 上的值(即 u [X] = v [X]),那么 u 在属性 Y 上的值也等于 v 在属性 Y 上的值(即 u [Y] = v [Y]),我们就说属性集 Y 函数依赖于属性集 X,记作 X → Y。
形式化定义
设 R (U,F) 是属性 U 上的一个关系模式,X 和 Y 是 U 的子集,r 为 R 的任何关系。如果对于 r 中的任意两个元组 u, v,只要有 u [X] = v [X],就有 u [Y] = v [Y],则称 X 函数决定 Y,或称 Y 函数依赖于 X,记为 X → Y。
例子
- 通讯录例子:
属性集 U:{名字,电话号码}
属性集 X:{名字}
属性集 Y:{电话号码}
如果对于通讯录中的任何两个人,只要他们的名字相同,他们的电话号码也一定相同,那么我们可以说 “名字(X)函数决定电话号码(Y)”,记作名字 → 电话号码。
简单记法
========== 简单记法 ==========
要记住函数依赖的概念,可以记住以下几点:
X → Y:如果 X 相同,则 Y 也相同。
名字 → 电话号码:同样的名字对应同样的电话号码。
关系模式:R (U,F) 中的属性集 X 和 Y。