数据库常见4种范式
来源:99网
1. 数据库范式
1.1 第一范式(1NF)
- 第一范式要求数据表中每个字段的值必须具有原子性,也就是不可再分;
- 属性的原子性具有主观性,需要根据场景应用具体分析;
1.2 第二范式(2NF)
- 在第一范式基础上,要求:1)非主键字段必须完整依赖主键字段,而不是部分依赖;2)数据表记录可唯一标识;
- 第二范式说明每个数据表都是一个的对象,有自己的含义;
1.3 第三范式(3NF)
- 在第二范式基础上,要求:数据表中的所有非主键字段必须与主键字段直接相关,而不能与其他非主键字段存在依赖关系;
- 所有非主键字段之间互相;
1.4 巴斯·科德范式(BCNF)
- 简称巴斯范式,是改进的第三范式;
- 在第三范式基础上,要求:数据表只能有一个候选键或每个候选键都是单属性,进一步降低数据冗余性;
1.5 范式的优缺点
1.5.1 优点
- 降低数据冗余;
- 在性能、扩展性和数据完整性取得较好平衡;
1.5.2 缺点
- 数据冗余度越低,数据表数量越多;
- 查询时涉及联合查询,且会造成部分索引无效,导致数据查询效率降低;