什么是数据库三大范式,通俗讲解 一讲就懂

您所在的位置:网站首页 通俗的说 什么是数据库三大范式,通俗讲解 一讲就懂

什么是数据库三大范式,通俗讲解 一讲就懂

2024-07-12 10:13| 来源: 网络整理| 查看: 265

数据库三大范式是什么? 第一范式(1NF): 确保每列的原子性(强调的是列的原子性,即列不能够再分成其他几列)。实际上,第一范式是所有关系型数据库的最基本要求。

举例说明: 第一种表设计:

地址青青草原,羊村,肥羊小学

第二种表设计:

小镇村具体地址青青草原羊村肥羊小学

阐述: 第一种表设计不满足第一范式,为什么不满足第一范式?因为地址列不具有原子性,能拆分成省份、市和具体地址;

第二范式(2NF): 是在第一范式(1NF)的基础上建立起来的,即满足第二范式(2NF)必须先满足第一范式(1NF)第二范式要求确保表中每列与主键相关,而不能只与主键的某部分相关(主要针对联合主键),主键列与非主键列遵循完全函数依赖关系,也就是完全依赖

举例说明: 第一种表设计::

学号姓名系名系主任课程名分数001喜洋洋信息工程系羊村村长《如何打败灰太狼》95001喜洋洋信息工程系羊村村长《如何打败灰太狼它老婆》95001喜洋洋信息工程系羊村村长《如何收养小灰灰》60002美洋洋信息工程系羊村村长《如何收养小灰灰》100002美洋洋信息工程系羊村村长《如何打败灰太狼》60002美洋洋信息工程系羊村村长《如何打败灰太狼它老婆》60003懒洋洋没关系黑大帅《青草100种烹饪方法》60003懒洋洋没关系黑大帅《毛选》100003懒洋洋没关系黑大帅《思政》100

第二种表设计(分开两个表,将表拆分为每列可依赖于首列的两张表)

选课表:

学号课程名分数001如何打败灰太狼》95001《如何打败灰太狼它老婆》95001《如何收养小灰灰》60002《如何收养小灰灰》100002《如何打败灰太狼》60002《如何打败灰太狼它老婆》60003《青草100种烹饪方法》60003《毛选》100003《思政》100

人员表:

学号姓名系名系主任001喜洋洋信息工程系羊村村长001喜洋洋信息工程系羊村村长001喜洋洋信息工程系羊村村长002美洋洋信息工程系羊村村长002美洋洋信息工程系羊村村长002美洋洋信息工程系羊村村长003懒洋洋没关系黑大帅003懒洋洋没关系黑大帅003懒洋洋没关系黑大帅

阐述: 就是根据主键或者联合主键,将一个表最有关联的属性分别放在一起

第三范式(3NF): 是在第二范式的基础上建立起来的。第三范式指:属性不依赖于其他非主属性第三范式确保主键列之间没有传递函数依赖关系,也就是消除传递依赖

举例说明: 继续 第二范式 继续拆分:

选课表:

学号课程名分数001如何打败灰太狼》95001《如何打败灰太狼它老婆》95001《如何收养小灰灰》60002《如何收养小灰灰》100002《如何打败灰太狼》60002《如何打败灰太狼它老婆》60003《青草100种烹饪方法》60003《毛选》100003《思政》100

学生表:

学号姓名系名001喜洋洋信息工程系002美洋洋信息工程系003懒洋洋没关系

系表:

系名系主任信息工程系羊村村长没关系黑大帅

阐述: 第三范式,在表中,一个系名能确定一个系主任。这样,系名依赖于学号和(学生)姓名,而系主任又依赖于系名,这就导致了传递依赖,3NF就是消除这种依赖。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3