数据库设计三大范式

来源:互联网 发布:国家质检总局网络 编辑:程序博客网 时间:2024/06/07 21:54

第一范式:
要求表的每个字段必须是不可分割的独立单元
student : name – 违反第一范式
张小名|狗娃

sutdent : name old_name –符合第一范式
张小名 狗娃

第二范式:

在第一范式的基础上,要求每张表只表达一个意思表的每个字段都和表的主键有依赖
employee(员工): 员工编号 员工姓名 部门名称 订单名称 –违反第二范式

员工表:员工编号 员工姓名 部门名称

订单表: 订单编号 订单名称 – 符合第二范式

第三范式:
在第二范式基础,要求每张表的主键之外的其他字段都只能和主键有直接决定依赖关系。
员工表: 员工编号(主键) 员工姓名 部门编号 部门名 –符合第二范式,违反第三范式 (数据冗余高)

员工表:员工编号(主键) 员工姓名 部门编号 –符合第三范式(降低数据冗余)
部门表:部门编号 部门名

设计原则: 建议设计的表尽量遵守三大范式。

0 0