第一范式:强调原子性,列不可再分
第二范式:强调唯一性,要有主键,其他列必须完全依赖于主键,不能部分依赖
第三范式:不可传递依赖,任何非主键列只能依赖于主键,不能依赖于其他列
基于三范式不适合对高性能的要求,因而出现了反范式。
反范式:是一种对范式化设计的数据库的性能优化策略,通过在表中增加冗余或重复的数据来提高数据库的读取性能。简括就是增加了一点冗余以空间换取时间。
程序没有冗余的数据库不一定是最好的数据库,有时为了提高查询效率,就必须降低范式标准,适当.保留冗余数据。具体操作就是在一个表中增加另一个表的冗余字段,减少了两个表查询时的关联,从而提高查询效率。