数据库三大范式最通俗解释

第一范式

  • 列不能够再分

这是不符合第一范式的(红色代表主键)——地址列可以再分

学生表

id 姓名 性别 地址
001 闪客sun 中国,吉林,长春

这是符合第一范式的

学生表

id 姓名 性别 国家 省份 城市
001 闪客sun 中国 吉林 长春

第二范式

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

这是不符合第二范式的(红色代表主键)---商品名称依赖了主键的一部分商品ID

订单表

订单ID 商品ID 商品名称
001 251 直升机

这是符合第二范式的

订单表

订单ID 商品ID
001 251

商品表

商品ID 商品名称
251 直升机

第三范式

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

这是不符合第一范式的(红色代表主键)——学校描述没有直接依赖于主键,而是直接依赖于学校,学校直接依赖于主键,所以存在传递依赖

学生表

id 姓名 学校 学校描述
001 闪客sun 氢化大学 中国最牛逼的学校

这是符合第一范式的

学生表

id 姓名 学校id
001 闪客sun 001

学校表

id 名称 描述
001 氢化大学 中国最牛逼的学校

 

PS:本文仅帮助你理解三大范式,深入了解还需要咬定义和具体例子

posted @ 2018-07-02 18:01  闪客sun  阅读(5803)  评论(1编辑  收藏  举报