第一、二、三范式

范式(Normal Form)是范式是符合某一种级别的关系模式的集合。通俗一点就是对数据库中表的属性的约束条件。

第一范式 1NF

第一范式的条件:元组中的每一个分量都必须是不可分割的数据项。

反例:
第一、二、三范式_第1张图片
应该修改为:
在这里插入图片描述

第二范式 2NF

第二范式的条件:在第一范式的基础上,所有的非主属性完全依赖于主键。完全依赖意味着不能依赖于主键的一部分属性。

反例:
在这里插入图片描述
对于该表,学号和课程号组合在一起是主键,但是姓名只由学号决定,违反了第二范式。类似还有课程名由课程号决定。

所以应该拆分为:
第一、二、三范式_第2张图片

第三范式 3NF

第三范式的条件:满足第二范式的基础上,非主属性都不传递依赖于主键
在这里插入图片描述
主键是学号,但是学校地址也可以由学校名称决定,存在传递依赖

分解为:
第一、二、三范式_第3张图片

你可能感兴趣的:(软件工程)