数据库4种范式

第一范式:原子性,每个字段都不可再分;

成绩可以再分成考试成绩和学分,所以不符合第一范式。

第二范式:不存在对主键的部分依赖;

(学生编号)--->学生姓名

(培训编号)--->培训名称、培训费

(学生编号,培训编号)--->报名日期

所以主键是(学生编号,培训编号),存在部分依赖,不满足第2范式;

第三范式:不存在传递依赖

主键是(员工编号、项目编号)

员工编号->部门编号->部门名称:存在依赖传递,不满足第三范式

BCNF:不存在主键的一部分依赖另一部分或其他部分;

这个表存在两个候选键(仓库ID,存储物品ID)或者(管理员ID,存储物品ID)

仓库ID--->管理员ID

管理员ID--->仓库ID

不满足BCNF范式。

按照范式设计数据库可以减少数据冗余以及插入、删除异常、更新异常;

原文地址:https://www.cnblogs.com/wangdake-qq/p/7390001.html