问题的提出
为了遇到具体问题创建针对问题最有效的据库,尽量减少数据的冗余。
R(U,D,DOM,F)
R:符号化元组
U:一组属性
D:属性组U中的属性所来自的域
DOM:属性到域的映射
F:属性组U上的数据依赖(数据依赖:关系内部属性与属性间的一种约束关系)
优良的关系模式应该避免以下几点问题:
(1) 数据冗余(尽可能减少):同一属性中出现多次相同的数据
(2) 更新异常:通常表现为维护数据库的完整性而导致某些属性的数据无法更新。
(3) 插入异常
(4) 删除异常
规范化
规范化:一个低一级范式的关系模式通过模式分解可以转化为若干个高一级范式的关系模式的集合,这种过程就叫规范化。
1)1NF:关系数据库中满足最低要求的为第一范式,即数据间存在关系。
2)2NF:消除主属性对码的部分函数依赖。
3)3NF:消除主属性对码的部分函数依赖及传递函数依赖。
4)BCNF:所有属性依赖于码,必须是完全依赖。
5)规范化的基本思想:逐步消除数据依赖中不合适的部分,使模式中的各关系达到某种程度的“分离”,即“一事一地”的模式设计原则。
6)规范化的实质:单一化。