第一范式:

      确保每列的原子性(不可再分)

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

  例如:某张表,有地址的字段,如果地址字段中的某个城市是经常被访问的,就因该将地址这个属性重新拆分为省,市,县等部分来进行存储,这样对地址中的某一部分进行操作是就非常方便;

第二范式:

      在第一范式的基础上,确保表中的每一列都和主键相关(一个表中只能保存一种数据)

      例如:一个学生表,有学生id,学生姓名,学生性别,但是如果这时要是出现课程的其他信息将违反第二范式;

第三范式:

      在第二范式的基础上,确保表中的每一列都和主键直接相关(不能间接相关)

   例如:一个员工表,每个员工所在的部门又不同,所以必须将员工编号(主键)和部门编号(外键)建立相应关系,这样在该员工表中就不能出现与部门表的其他信息;(第三范式就是第二范式的升级版,增加了一些限制)

 

第二范式和第三范式的概念很容易混淆,区分它们的关键点在于

第二范式:非主键列是否完全依赖于主键,还是依赖于主键的一部分;

第三范式:非主键列是直接依赖于主键,还是直接依赖于非主键列。

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄