1.第一范式:保证每一张表的原子性
假如你用一张用户表:表中有以下三个字段 用户id 用户姓名 用户地址
那么我们添加三个值 用户id:1 用户姓名 :战三 用户地址 :中国福建
那么我们可以将其地址分为国籍,地区,这样第一次设计的数据库就不满足第一范式,我们要保证每一个字段都不可拆分,保证其原子性
2.第二范式:在第一范式的基础上,保证每一张表只做一件事
继续以用户表为例,该表我们是存用户的信息,那么假如我们在该表上添加该用户的成绩
成绩我们应该放在一张单独的成绩表中,不应该放在用户表中,这样让用户表做了成绩表的事这样违反了第二范式
3.第三范式:在第二范式的基础上,取消传递依赖性
还是这张用户表,我们让其关联一张企业表,添加一个企业id
这样用于关联企业表,告知该用户是属于什么企业的,假如我们又在该表中增加了一个企业名称,那么企业名称我们可以通过 企业id来获取,如果在用户信息表加上企业名称的字段就违反了第三范式的取消传递依赖