1、第一范式:
1.1、一个列不能有多个值
1.2、一个表不能有重复行
2、第二范式:
2.1、普通字段完全依赖于主键字段
3、第三范式:
3、普通字段不依赖于其它普通字段,并且相互独立。
2、口诀:“两个不能,两个依赖”
3、各范式的使用范围
3.1、必须保证数据是有效的,不重复的。所以第一范式必须满足。
3.2、一个表中有多种事物时,尽量保证两个表只保存一种事物的编码,两种事物的具体属性保存在各自的表中。有时为了查询的效率,可以适当冗余常用字段。所以第二范式可以适当违反。
3.3、一个表中只有一种事物,但有附加属性或计算列,这些列可以分离出形成新的表,也可以不分离。所以第三范式也可以适当违反。
4、范式级别的考虑:
4.1、范式越高,信息分类越细,表越多,信息冗余越少,但查询关联也就越多,查询速度也就越慢。
4.2、所以,在数据库设计中,我们需要在严格遵从范式和系统性能之间取得一种平衡。在大多数情况下,只需要满足前三个范式就可以了。