问题
- 数据冗余
- 更新异常
- 插入异常
- 删除异常
一个好的模式应当不会发生插入异常、删除异常和更新异常,数据冗余应尽可能少
数据依赖
定义:一个关系内部属性与属性之间的一种约束关系(该约束关系是通过属性间值的相等与否体现出来数据间相关联系,是数据内在的性质,是语义的体现)
函数依赖
多值依赖
数据依赖的公理系统
码
范式
5NF⊆4NF⊆BCNF⊆3NF⊆2NF⊆1NF
规范化:一个低一级范式的关系模式通过模式分解可以转化为若干个高一级范式的关系模式的集合的过程
第一范式 INF
每一个分量必须是不可分割的数据项
第二范式 2NF
一个关系模式 R 不属于 2NF,会产生以下问题:
- 插入异常
- 删除异常
- 修改复杂
第三范式 3NF
BCNF
判断
- 有部分依赖是 INF
- 无部分依赖是 2NF
- 既无部分依赖又无传递依赖是 3NF
- 每个决定因素均包含码是 BCNF