首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >MySQL数据库——数据库设计三范式

MySQL数据库——数据库设计三范式

原创
作者头像
落雨
修改2022-03-07 11:08:50
修改2022-03-07 11:08:50
30.5K0
举报
文章被收录于专栏:落雨的专栏落雨的专栏

概述

数据库范式就是数据库设计时需要满足的规范,只有满足这些规范才能保证数据库的冗余小、结构明确,这也直接影响着数据库性能的发挥。数据库开发人员需要遵守范式建立出科学规范的数据库结构。

目前对于关系型数据库有六种范式

  • 第一范式(1NF)
  • 第二范式(2NF)
  • 第三范式(3NF)
  • 巴斯-科德范式(BCNF)
  • 第四范式(4NF)
  • 第五范式(5NF,又称完美范式)

一般来说数据库只需要满足前三范式就可以了。

三大范式

第一范式(1NF)

1、每一列属性都是不可再分的属性值,确保每一列的原子性

2、两列的属性相近或相似或一样,尽量合并属性一样的列,确保不产生冗余数据。

简单的来说就是列不能在分割成其他列,一列中只放一种相关的信息。

第二范式(2NF)

第二范式在第一范式的基础之上更进一层。第二范式需要确保数据库表中的每一列都和主键相关,而不能只与主键的某一部分相关(主要针对联合主键而言)。也就是说在一个数据库表中,一个表中只能保存一种数据,不可以把多种数据保存在同一张数据库表中。

满足1NF,表必须要有主键,非主键字段完全依赖主键字段。

第三范式(3NF)

满足2NF,第三范式需要确保数据表中的每一列数据都和主键直接相关,而不能间接相关。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 概述
  • 三大范式
    • 第一范式(1NF)
    • 第二范式(2NF)
    • 第三范式(3NF)
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档