范式

范式

通俗理解为一张数据表的表结构所符合的某种设计标准的级别,就像家里装修买建材,最环保的是E0级,其次是E1级,还有E2级等等。数据库范式也分为1NF,2NF,3NF,BCNF,4NF,5NF。一般在我们设计关系型数据库的时候,最多考虑到BCNF就够。符合高一级范式的设计,必定符合低一级范式,例如符合2NF的关系模式,必定符合1NF。

第一范式(1NF)

1NF的定义为:符合1NF的关系中的每个属性都不可再分,即列不能再分

实际上,1NF是所有关系型数据库的最基本要求,但是仅仅符合1NF的设计,仍然会存在数据冗余过大,插入异常,删除异常,修改异常的问题

第二范式(2NF)

2NF在1NF的基础之上,消除了非主属性对于码的部分函数依赖。

  • 首先要符合第一范式
  • 表必须有主键
  • 非主键列不能只依赖于主键的一部分 

第三范式(3NF)

3NF在2NF的基础之上,消除了非主属性对于码的传递函数依赖。

  • 首先满足第二范式
  • 非主键列必须直接依赖于主键,不能存在传递依赖

第一范式:列不可再分
第二范式:每个表要有主键
第三范式:相联系的表要有外键相连 

你可能感兴趣的:(计算机学习)