数据库规范化设计
规范化数据库设计有效减少数据库中的冗余数据,尽量使同一数据在数据库中仅保存一份,有效降低维护数据一致性的工作量;设计合理的表间依赖关系和约束关系,便于实现数据完整性和一致性;设计合理的数据库结构,便于系统对数据高效访问处理。
一、函数依赖
函数依赖的数学定义:设有一关系模式R(U),U为关系R的属性集合,X和Y为属性U的子集。设t、s是关系R中的任意两个元组,如果t[X] = s[X],则 t[Y] = s[Y]。那么称Y函数依赖于X,表示为 X–> Y。
函数依赖的左部称为决定因子,右部称为依赖函数。决定因子和依赖函数都是属性的集合。
函数依赖反映属性与数性组之间相互依存、相互制约的关系,即关系表中属性之间的依赖关系。
1.1 函数依赖的类型
• 完全函数依赖:设X、Y是某关系的不同属性集,如X --> Y,且不存在X' 作为X的子集,使得X' --> Y,则Y称为完全函数依赖,否则称Y为部分函数依赖。
• 函数传递依赖:设X、Y、Z是某关系的不同属性集,有X --> Y,Y !--> X, Y -- Z,若X--> Z,称Z对X存在函数传递依赖。
• 多值函数依赖
关系规范化范式
关系规范化是把一个有访问异常的关系分解成结构良好的关系的过程,使得这些关系有最小的冗余或没有冗余。;