第一范式:列不可再分
比如说一个学生表,学生的姓名,学号,性别,这些信息如果都放在一列的话,这不太合适吧,每一列应当对应一个最基础的属性,不能再进行划分,保证列的原子性
第二范式:属性完全依赖于主键
就是说一个表,一定要有一列或几列的组合作为主键,作为标识每一行的唯一属性
第三范式:属性不依赖于其它非主属性 属性直接依赖于主键
比如说一个学生表,除了学生的基本信息以外,还有学习科目,教师等属性,教师列不仅依赖于学生的学号,还依赖于学习科目,这样的一个表是冗余的,不符合第三范式,存在许多重复性数据,应当把学习科目和教师列以合理的设计分离出去