1、第一范式(1NF):属性值都是不可再分的原子值。
比如:【联系人】(姓名、手机号码、地址)。
由于一个联系人有公司地址、家庭地址,因此不符合1NF。
要符合1NF,需要把列(地址)拆分,即:【联系人】(姓名、手机号码、公司地址、家庭地址)。
2、第二范式(2NF):消除非主属性对候选键的部分依赖。
比如:【成绩】(学号、课程号、成绩、学分)。
候选键为(学号、课程号)。
由于存在部分依赖(课程号->学分),因此不符合2NF。
要符合2NF,需要拆成两张表,分别为【课程】(课程号、学分),【成绩】(学号、课程号、成绩)。
3、第三范式(3NF):消除非主属性对候选键的传递依赖。
比如:【学生】(学号、姓名、系号、系名、系位置)。
由于存在传递依赖(学号->系号->系名、系位置)。
要符合3NF,需要拆成两张表,分别为【系】(系号、系名、系位置),【学生】(学号、姓名、系号)。