一、为什么使用范式?
要想设计—个好的关系,必须使关系满足一定的约束条件,此约束已经形成了规范,分成几个等级,一级比一级要求得严格。满足这些规范的数据库是简洁的、结构明晰的,同时,不会发生插入(insert)、删除(delete)和更新(update)操作异常。反之则是乱七八糟,不仅给数据库的编程人员制造麻烦,而且面目可憎,可能存储了大量不需要的冗余信息。
目前关系数据库有六种范式,一般来说,数据库只需满足第三范式(3NF)就行了。
二、什么是数据库三大范式?
1、第一范式
第一范式(Normal Formate, 1NF) 的目标是确保每列的原子性。如果每列(或者每个属性值)
都是不可再分的最小数据单元(也称为最小的原子单元),则满足第一范式。例如:
这里订单表的产品名称这一列存储了多个数据,不符合原子性,需要拆分。
这样每张表都满足第一范式。
2、第二范式
第二范式(2NF) 在第一范式的基础上更进一层,其目标是确保表中的每列都