首页 > 代码库 > 数据三大范式

数据三大范式

合理的数据库:

1.结构合理

2.冗余较小

3.尽量避免避免插入、删除、修改异常

范式(NF:Normal Form)

要设计一个结构合理的数据库,必须满足一定的范式

第一范式,第二范式,第三范式 (依次嵌套包含  范式越高  设计质量越高)

第一范式:数据表中每一列都是不可分割的基本数据项(即同一列不能有多个值  原子性)

如:用户表(用户名 家庭地址)

  用户表(用户名 省 城市  详细地址)   实际业务需求:如按省 或 市查询

应用:第一范式的合理遵循需要根据实际业务需求来定

第二范式:数据表中的每一列都和主键(联合主键)相关,而不能只与主键的某一部分相关

     (即数据表中只能存一种数据,不可以把多种数据存在同一张数据表中)

                    技术分享

 

       (学生--课程  多对多)

       学号,课程编号作为联合主键, 课程名称只依赖于课程编号,但是与学号没有关系。

       冗余较多 如课程名称  修改不方便 如 修改张三的名字  所以上表不合理!

       解决方案如下:

       技术分享

 

 

第三范式数据表中

 

数据三大范式