数据库设计三大范式
# 第一范式
1、每一列属性都是不可再分的属性值,确保每一列的原子性 (如:地址字段包含了省市区,不符合原子性,应才开)
2、两列的属性相近或相似或一样,尽量合并属性一样的列,确保不产生冗余数据。(如:字段中有室号、物品1、数量1、物品2、数量2,应合并成室号、物品、数量)
# 第二范式
每一行的数据只能与其中一列相关,即一行数据只做一件事。只要数据列中出现数据重复,就要把表拆分开来。
如:一个人同时订几个房间,就会出来一个订单号多条数据,这样子联系人都是重复的,就会造成数据冗余。我们应该把他拆开来。
# 第三范式
数据不能存在传递关系,即每个属性都跟主键有直接关系而不是间接关系。像:a-->b-->c 属性之间含有这样的关系,是不符合第三范式的。
如:学号--> 所在院校 --> (院校地址,院校电话) 应拆开为(学号,姓名,年龄,性别,所在院校)--(所在院校,院校地址,院校电话)
上次更新: 2022/11/24, 17:59:25