数据表的范式
数据库设计有哪些范式?
关系型数据库一共有 6 种范式,按照范式几笔,从低到高分别是:
- 1NF 第一范式
- 2NF 第二范式
- 3NF 第三范式
- BCNF 巴斯-科德范式
- 4NF 第四范式
- 5NF 第五范式,也叫完美范式
数据库的范式设计越高阶,冗余度就越低,高阶范式一定符合低阶范式的要求。
6种设计范式关系
第一范式 1NF
第一范式的目标是确保每列的原子性,如果每列都是不可再分的最小原子单元。 1NF 是指数据库中任何属性都是原子的,不可拆分。
第二范式 2NF
首先满足第一范式,并且表中非主键不存在对主键的依赖。第二范式要求每个表只描述一件事情。
第二范式
第三范式 3NF
第三范式定义是,满足第二范式,并且表中的列不存在对非主键列的传递依赖简单的说,一个关系中不包含已在其它关系已包含的非主关键字信息。
例子,如果将表设计成如下: