码迷,mamicode.com
首页 > 数据库 > 详细

数据库设计范式

时间:2020-01-07 18:02:05      阅读:94      评论:0      收藏:0      [点我收藏+]

标签:必须   不同   没有   最小   拆分   focus   不能   描述   lock   

 

范式(NF:Normal Form) 的概念是设计关系数据库时,遵从不同的规范要求。设计出合理的关系型数据库,这些不同的规范要求被称为不同的范式。各范式基于上一层范式依次递增,越高的范式数据库冗余越小。

目前关系数据库有六种范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴斯-科德范式(BCNF)、第四范式(4NF)和第五范式(5NF,又称完美范式)。一般来说,数据库只需满足(3NF)就行了。

第一范式(1NF):数据表的每一列(每个字段)必须时不可拆分的最小单元,也就是确保每一列的原子性;

第二范式(2NF):要求表中的所有列,都必须依赖于主键,而不能有任何一列与主键没有关系、也就是说一个表只描述一件事情;

第三范式(3NF):表中的每一列只与主键直接相关而不能依赖于其它属性(表中的每一列只能依赖于主键);

巴斯-科德范式(BCNF):任何非主属性不能对主键子集依赖,在3NF的基础上消除对主码子集的依赖,是修正第三范式的;

第四范式(4NF):禁止同一表中非主键列之间出现的多对多关系;

第五范式(5NF):为了排除在表中所有的冗余,将表分割成尽可能小。

数据库设计范式

标签:必须   不同   没有   最小   拆分   focus   不能   描述   lock   

原文地址:https://www.cnblogs.com/hcjk12580/p/12162771.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!