为什么需要数据规范化?

1)信息重复

2)更新异常

3)插入异常

   无法正常显示信息

4)删除异常

  丢失有效的信息

    

 

第一范式(1NF):

原子性:保证每一列不可再分

三大范式_第一范式

 

 

第二范式(2NF):

前提:满足第一范式

每张表只描述一件事。

三大范式_第一范式_02

 

 

第三范式(3NF)

前提:满足第一范式和第二范式

确保每张表的数据都直接与主键相关,而不能间接相关

三大范式_第一范式_03

 

 规范性和性能的问题

关联查询的表不得超过三张(阿里规范)

  1)考虑商业化的需求和目标(成本,用户体验)数据库的性能更加重要

  2)在规范性能的问题的时候,需要适当考虑一下规范性

  3)故意给某些表增加一些冗余的字段(从多表查询变为单表查询)

  4)故意增加一些计算列(从大数据量降低为小数据量的查询:索引)