数据库三范式的理解
什么是范式?
范式是数据库设计时遵循的一种规范,不同的规范要求遵循不同的范式。
最常用的三大范式
第一范式(1NF):原子性。属性不可分割,即每个属性都是不可分割的原子项
。(实体的属性即表中的列,否则就不是关系数据库)
第二范式(2NF):唯一性 。满足第一范式;且不存在部分依赖,即非主属性必须完全依赖于主属性
。(主属性即主键;完全依赖是针对于联合主键的情况,非主键列不能只依赖于主键的一部分)
第三范式(3NF):满足第二范式;且不存在传递依赖。(A -> B, B ->C, A -> C)(多对多的关系,分三张表设计)
简单归纳:
第一范式(1NF):字段(列)不可分;
第二范式(2NF):有主键,非主键字段依赖主键;
第三范式(3NF):非主键字段不能相互依赖。
(1NF强调列不可再分;2NF和3NF强调非主属性列和主属性列之间的关系)