通俗地理解三个范式,对于数据库设计大有好处。在数据库设计中
,为了更好地应用三个范式,就必须通俗地理解三个范式(通俗地
理解是够用的理解,并不是最科学最准确的理解):
第一范式:1NF是对属性的原子性约束,要求属性具有原子性,不
可再分解;(只要是关系型数据库都满足1NF)
第二范式:2NF是对记录的惟一性约束,要求记录有惟一标识,即
实体的惟一性;
第三范式:3NF是对字段冗余性的约束,即任何字段不能由其他字
段派生出来,它要求字段没有冗余。 没有冗余的数据库设计可以
做到。(即表中不要有冗余数据,就是说,表的信息,如果能够被
推导出来,就不应该单独的设计一个字段来存放,比如下面的设计
就不满足3NF)
但是,没有冗余的数据库未必是最好的数据库,有时为了提
高运行效率,就必须降低范式标准,适当保留冗余数据。具体做法
是: 在概念数据模型设计时遵守第三范式,降低范式标准的工作
放到物理数据模型设计时考虑。降低范式就是增加字段,允许冗余
。