数据库三范式

第一范式

一范式就是属性不可分割。

1、每一列属性都是不可再分的属性值,确保每一列的原子性

2、两列的属性相近或相似或一样,尽量合并属性一样的列,确保不产生冗余数据
知识兔

第二范式

二范式就是要消除冗余。

只要数据列中出现数据重复,就要把表拆分开来。

例:一个人同时订几个房间,就会出来一个订单号多条数据,这样子联系人都是重复的,就会造成数据冗余。我们应该把他拆开来。
知识兔

第三范式

三范式就是要消除传递依赖。

数据不能存在传递关系,即每个属性都跟主键有直接关系而不是间接关系。像:a-->b-->c  属性之间含有这样的关系,是不符合第三范式的
知识兔

总结

三大范式只是一般设计数据库的基本理念,可以建立冗余较小、结构合理的数据库。
如果有特殊情况,要特殊对待,数据库设计最重要的是看需求跟性能,需求 > 性能 > 表结构
知识兔
计算机