FDs与规范化:构建高效数据库的关键
1. 函数依赖(Functional Dependencies, FDs)
在关系数据库设计中,函数依赖(Functional Dependencies, FDs)是理解数据之间关系的重要工具。函数依赖描述了在一个关系数据库中,某些属性的值如何唯一确定其他属性的值。例如,如果我们有一个员工表,其中包含员工编号(EmployeeID)和员工姓名(Name),并且我们知道每个员工编号对应唯一的员工姓名,那么我们可以表示为: EmployeeID → Name ,即员工姓名函数依赖于员工编号。
1.1 定义与符号表示
函数依赖的形式化定义如下:
- 设有关系模式 ( R(U) ),其中 ( U ) 是属性集,( X ) 和 ( Y ) 是 ( U ) 的子集。
- 如果对于 ( R ) 的任意两个元组 ( t_1 ) 和 ( t_2 ),只要 ( t_1[X] = t_2[X] ),就有 ( t_1[Y] = t_2[Y] ),则称 ( X ) 函数决定 ( Y ),记作 ( X \rightarrow Y )。
1.2 闭包(Closure)
闭包是指给定一组函数依赖,求解某个属性集的闭包,即该属性集能函数决定的所有属性。计算闭包的步骤如下:
- 初始化闭包 ( X^+ = X )。
- 重复以下步骤直到闭包不再变化:
- 对于每一个函数依赖 ( A \rightarrow B ),如果 ( A \subseteq X^+ ),则将 ( B ) 添
超级会员免费看
订阅专栏 解锁全文
845

被折叠的 条评论
为什么被折叠?



