白话数据库设计范式

   主要有4种范式,1NF,2NF,3NF,BCNF(前3个称为第x范式,第4个BCNF是由Boyce和Codd提出的,比3NF又进了一步,通常认为是修正的第三范式),按从左至右的顺序一种比一种要求更严格。要符合某一种范式必须也满足她前边的所有范式。一般项目的数据库设计达到3NF就可以了,而且可根据具体情况适当增加冗余,不必教条地遵守所谓规范。

    说白了,1NF就是要求一张表里只放相互关联的字段,不要把风的方向,马的品种和牛的数量3个字段放在一张表里,这只是最基本的要求,其实不说也没人会这样做。至于2NF,3NF,BCNF虽然描述的内容不同,但表现在数据特点上很相似,就好比在说不要为了把你哪天(A)和哪个女孩(B)的约会记下来,就把的女孩姓名(B)、胸围(C)都放在同一张表里,即不要用ABC一张表,而应该用ABBC两张表,以尽量避免浪费数据存储空间。因为和同一个女孩可能会约会好几次,但没必要每次都记录她的胸围。

你可能感兴趣的:(数据库设计)