范式
为了避免操作异常,关系模式要满足一定的条件。这种条件就叫做范式。一个高层的范式肯定能满足低层的范式。
第一范式:元组中的每一个数据项都不能再分割,处于原子状态。
第二范式:要求关系中的每一个非主键属性完全依赖于主键。
第三范式:要求关系中所有非主键属性之间不能存在函数依赖关系。
第四范式:要求关系中不能有多于一个的多值属性。
第五范式:符合此范式的表不能再分解为两个或多个表。
一般来说,规范化程度低会造成数据冗余和操作异常,但检索比较直接,处理简单。规范化程度高可以消除操作异常和减少冗余,但是在检索式要访问更多的关系,比较复杂,影响检索的速度。
对于具体的应用系统,一般第三范式甚至更低,就可以满足要求。