数据库三范式简单介绍

第一范式: 原子性,就是每个字段(列或属性)都是不可再拆分的

不符合第一范式的列子:

表:姓名, 电话,地址(省份,城市,详细地址)

更新后的表: 姓名, 电话,省份,城市,详细地址

第二范式: 唯一性,每个表只说明一个事物

不符合第二范式的列子:

表:员工姓名, 电话,年龄, 地址, 项目名称,项目开始日期,项目描述

以上表说明了两个事物:员工信息和项目信息

第三范式:非主键字段之间不能相互依赖

不符合第三范式的列子:

表:员工姓名, 电话,年龄, 地址, 所在项目,项目描述,项目状态

所在项目和项目描述,项目状态有依赖关系,有冗余信息。

更新后的表: 员工姓名, 电话,年龄, 地址, 所在项目ID(外键关联)


PS: 数据库的设计原则应该是: 需求 > 性能 > 范式, 范式可以作为设计表结构的一个参考。

你可能感兴趣的:(数据库三范式简单介绍)