(1)1NF
定义:所有属性不可再分
(2)2NF
定义:2NF 属于 1NF,且每一个非主属性都完全依赖于关键字。
我的理解,对于每一个非主属性,必须由所有的关键字共同决定(完全依赖),如果有某一个关键字便可决定(部分依赖),则不属于2NF。
例:R(学号,课程,系名,成绩,住处) ,其中(学号,课程)为关键字,系名依赖于课程。 不属于2NF
修改如下:R1(学号,课程,成绩),R2(学号,系名,住处)
缺点:数据冗余,修改复杂
(3)3NF
定义:3NF 属于 2NF,且每一个非主属性都不传递依赖于关键字
例:R2(学号,系名,住处),学号--->系名, 系名--->住处。 住处传递依赖于学号。所以不属于3NF
修改如下:R21(学号,系名),R22(系名,住处)