目录
1、数据库范式简介
设计关系数据库时,遵从不同的规范要求,设计出合理的关系型数据库,这些不同的规范要求被称为不同的范式,各种范式呈递次规范,越高的范式数据库冗余越小。
但是数据库范式绝对不是越高越好,范式越高,意味着表越多,多表联合查询的几率就越大,SQL查询的效率就变低。
一般开发中只遵从第三范式就好,是具体情况而定。
2、应用范式优点
(1)减少数据冗余(这是最主要的好处,其他好处都是由此而附带的)
(2)消除异常(插入异常,更新异常,删除异常)
(3)让数据组织的更加和谐
3、常见范式简述
常见的范式有1NF、2NF、3NF、BCNF以及4NF。下面对这几种常见的范式进行简要分析。
1)第一范式(1NF)
特点:每一列保持原子特性,列都是基本数据项,不能够再进行分割,否则设计成一对多的实体关系。
实例:
- 学生表(学号、用户名、性别、年龄,地址)
例:陕西省西安市未央区学府中路西安工业大学
地址信息还包含省市区可以拆分
- 拆分改造后:
学生表(学号、用户名、性别、年龄、地址ID)
地址表(地址ID、省、市、区、街道、学校)
注意:不符合第一范式不能称作关系型数据库。
2)第二范式(2NF)
特点:非主属性完全依赖于主键(主要针对联合主键-->消除部分依赖)
符合第一范式的基础上,非主属性完全依赖于主关键字,如果不是完全依赖主键,应该拆