第一范式
数据表中的每一列(字段),都不可再拆分。比如用户表,用户地址还可以拆分成国家、省份、市区,这样才是符合第一范式的。
第二范式
在第一范式的基础上,非主键列完全依赖主键,而不是依赖主键的一部分。比如说订单表,存储了商品信息(商品价格、商品类型),那么就需要把商品ID和订单ID作为联合主键,才是符合第二范式的。
第三范式
在第二范式的基础上,非主键列只能依赖主键,而不能依赖其他非主键,比如说订单表,就不能存储用户信息(姓名,年龄,地址)。
范式化优缺点
三大范式的设计是为了减少数据库冗余,节省空间,实际上一般公司设计数据库都是反范式化的,桶过冗余一些数据,利用空间换取时间,提高性能。
