概述
在数据库设计中,范式(Normal Forms, NF)是用来规范化数据库表结构,以减少冗余数据和提高数据一致性与完整性的重要工具。
函数依赖
完全函数依赖与部分函数依赖
完全函数依赖
定义:
完全函数依赖表示的是在一个关系中,若某个非主属性数据项依赖于全部关键字,则称这种依赖为完全函数依赖。
换句话说,如果非主属性 B B B 函数依赖于构成某个候选关键字的一组主属性 A A A ,而且 A A A 的任何一个真子集不能被B函数依赖,则称 B B B 完全函数依赖于 A A A。
举例:
以成绩表为例,该表包含 (学号,课程号,成绩) (学号,课程号,成绩) (学号,课程号,成绩)三个属性。其中, (学号,课程号) (学号,课程号) (学号,课程号)是一个候选键,因为它们共同确定了一个唯一的成绩。
- 完全函数依赖:在这个例子中, (学号,课程号) → 成绩 (学号,课程号)→ 成绩 (学号,课程号)→成绩是一个完全函数依赖。因为成绩完全依赖于学号和课程号的组合,单独的学号或课程号都不能确定成绩。
部分函数依赖
定义:
部分函数依赖是指在一个关系中,如果 X → Y X→Y X→Y ,并且存在 X X