(1)1NF
1. 数据库表的每个字段都符合原子性,不能分割(简单的说就是:每个字段都只能有一个值)
2. 说明:关系型数据库设计出来的表都必然满足1NF
3.例子
phone字段中含有2个值,所以不满足1NF
(2)2NF
1. 前提:数据库表满足1NF
2. 特点:表中不能有两条完全相同的数据
3.解决方法:通常设置一个主键
(3)3NF
1. 前提:数据库表满足2NF
2. 特点:各个表之间不能有冗余
3.解决方法:通常设置一个外键
4.例子
学生表:(学号,姓名, 年龄,性别,系别,系办地址、系办电话)
系别:(系别, 系办地址、系办电话)
因为系别、系办地址、系办电话已经在系别表中存在了,在学生表中还存在这些字段,就存在了冗余,所以不满足3NF。可以使用外键,将系别表的主键最为外键设置在学生表中即可。