第一范式 :
确保每列的原子性,确保每一列不可再分
id | 地区 address |
1 | 河南省安阳市 |
2 | 北京北京海淀区 |
3 | 河北雄安 |
id | 省 | 市 |
1 | 河南 | 安阳 |
2 | 北京 | 北京 |
3 | 河北 | 雄安 |
第二范式:
非主键字段要完全依赖主键字段
职工id | 职工名称 | 职工年龄 | 性别 | 地址
|
第三范式:
消除传递依赖
根据非主键字段可以推导出另外一个字段 这个就是冗余字段 ,需要把这个字段给消除掉
Pid 学号 | name | address | sex | age |
1 | 王茂林 |
|
|
|
2 | 嘉禾 |
|
|
|
id | pid | name | score |
1 | 1 | 王茂林 | 80 |
2 | 2 | 嘉禾 | 90 |
我发现的更好的(三范式)解释