书签 分享 收藏 举报 版权申诉 / 29
上传文档赚钱

类型数据库原理与系统开发教程第04章-关系数据库设计规范化理论.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:3426549
  • 上传时间:2022-08-30
  • 格式:PPT
  • 页数:29
  • 大小:661.50KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《数据库原理与系统开发教程第04章-关系数据库设计规范化理论.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    数据库 原理 系统 开发 教程 04 关系 设计 规范化 理论
    资源描述:

    1、数据库系统概论数据库系统概论An Introduction to Database System第四章第四章 关系数据库设计关系数据库设计规范化理论规范化理论“数据库原理及安全数据库原理及安全”课程课程第四章第四章 关系数据库设计规范化理论关系数据库设计规范化理论4.1 规范化问题的提出规范化问题的提出4.2 函数依赖函数依赖4.3 码(键)的概念码(键)的概念4.4 关系模式的范式关系模式的范式 4.5 小结小结2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君4.1 规范化问题的提出规范化问题的提出银行存款借贷系统中有一张表如下。Lend(Branch_nam

    2、eBranch_name,Branch_city,Assets,Customer_no,Customer_name,Loan_no,Amount)贷款表(银行机构名称银行机构名称,机构所在城市,资产,用户代码,用户名字,贷款号码,贷款金额)2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君稍加分析,就会发现这个关系模式存在问题。稍加分析,就会发现这个关系模式存在问题。4.1 规范化问题的提出规范化问题的提出v(1)数据冗余由于要在一个支行的每一笔贷款信息中重复存储该支行的资产值和所在城市名称等信息,所以造成了大量的数据冗余。v(2)插入异常如果新成立了一个支行,由

    3、于该支行还没有客户和贷款,这时就无法把该支行的基本信息(branch_name,branch_ city,assets)加入Lend表中。v(3)删除异常当某一支行所有的贷款都偿还后,在删除贷款信息的同时也删除了该支行的基本信息。2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君4.1 规范化问题的提出规范化问题的提出v(4)更新异常因为可能有很多人向该支行贷款,所以表中会有很多条Assets记录。如果某支行的资产发生变化,Lend表中所有有关该支行的元组都要修改。这就有可能出现一部分数据被修改,而另一部分没有被修改的情况,从而出现一致性问题。以上的这些问题统称为

    4、存储异常,在数据库模式的设计中应该尽量避免。之所以会出现上面的种种问题,是因为这个关系模式没有设计好,在它的一些属性之间存在不良函数依赖关系。规范化理论就是用来改造关系模式,通过分解关系模式来消除其中不合适的数据依赖,以解决上面出现的数据冗余、插入异常、删除异常、更新异常等问题。2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君第四章第四章 关系数据库设计规范化理论关系数据库设计规范化理论4.1 规范化问题的提出规范化问题的提出4.2 函数依赖函数依赖4.3 码(键)的概念码(键)的概念4.4 关系模式的范式关系模式的范式 4.5 小结小结2022年8月3日北京电

    5、子科技学院计算机系北京电子科技学院计算机系 张克君张克君4.2 函数依赖函数依赖4.2.1 函数依赖的定义函数依赖的定义 4.2.2 平凡函数依赖与非平凡函数依赖平凡函数依赖与非平凡函数依赖4.2.3 完全函数依赖与部分函数依赖完全函数依赖与部分函数依赖4.2.4 传递函数依赖传递函数依赖2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君4.2.1 函数依赖的定义函数依赖的定义v 函数依赖通俗地说就是:某个属性集决定另一个属性集时,称另一属性集依赖于该属性集。举个简单例子,知道了一个人的学号,就能知道他的姓名,这就是学号属性决定姓名属性。下面给出函数依赖的定义。v

    6、 若对于R(U),U是R的属性集合,X、Y是U中的子集,则对于R(U)任意一个可能的关系r,不可能存在两个元组在X上的属性值相等,而在Y上的属性值不同,则称X决定Y或者Y依赖于X,记作XY。2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君4.2.1 函数依赖的定义函数依赖的定义v(1)函数依赖不是指关系模式R的某个或某些关系实例满足的约束条件,而是指R的所有关系实例均要满足的约束条件。v(2)函数依赖是语义范畴的概念,只能根据数据的语义来确定函数依赖。例如,“姓名年龄”这个函数依赖只有在不允许有同名人的条件下成立。2022年8月3日北京电子科技学院计算机系北京电

    7、子科技学院计算机系 张克君张克君4.2 函数依赖函数依赖4.2.1 函数依赖的定义函数依赖的定义 4.2.2 平凡函数依赖与非平凡函数依赖平凡函数依赖与非平凡函数依赖4.2.3 完全函数依赖与部分函数依赖完全函数依赖与部分函数依赖4.2.4 传递函数依赖传递函数依赖2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君4.2.2 平方函数依赖与非平凡函数依赖平方函数依赖与非平凡函数依赖v 当关系中的属性集合Y是属性集合X的子集(YX)时,存在函数依赖XY,即一组属性函数决定它的所有子集,这种函数依赖称为平凡函数依赖。v 当关系中的属性集合Y不是属性集合X的子集时,存在

    8、函数依赖XY,则称这种函数依赖为非平凡函数依赖。2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君4.2 函数依赖函数依赖4.2.1 函数依赖的定义函数依赖的定义 4.2.2 平凡函数依赖与非平凡函数依赖平凡函数依赖与非平凡函数依赖4.2.3 完全函数依赖与部分函数依赖完全函数依赖与部分函数依赖4.2.4 传递函数依赖传递函数依赖2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君4.2.3 完全函数依赖与部分函数依赖完全函数依赖与部分函数依赖v 设X、Y是关系R的两个属性集合,X是X的真子集,存在XY,但对于每一个X都有X!Y,则称Y

    9、完全函数依赖于X。即只要X这个属性集合少一个属性,Y就不依赖于X。v 设X、Y是关系R的两个属性集合,存在XY,若X是X的真子集,存在XY,则称Y部分函数依赖于X。2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君4.2 函数依赖函数依赖4.2.1 函数依赖的定义函数依赖的定义 4.2.2 平凡函数依赖与非平凡函数依赖平凡函数依赖与非平凡函数依赖4.2.3 完全函数依赖与部分函数依赖完全函数依赖与部分函数依赖4.2.4 传递函数依赖传递函数依赖2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君4.2.4 完全函数依赖与部分函数依赖完全

    10、函数依赖与部分函数依赖v 设X,Y,Z是关系R中互不相同的属性集合,存在XY(Y!X),YZ,有XZ,则称Z传递函数依赖于X。2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君第四章第四章 关系数据库设计规范化理论关系数据库设计规范化理论4.1 规范化问题的提出规范化问题的提出4.2 函数依赖函数依赖4.3 码(键)的概念码(键)的概念4.4 关系模式的范式关系模式的范式 4.5 小结小结2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君4.3 码(键)的概念码(键)的概念v 码通俗地说就是能够唯一标识关系中每个元组的属性或属性集合。

    11、候选码是码的集合。下面给出码的定义。v 在关系模式R(U,F)中,K是U中的属性或属性集合,若K完全决定U,则称K为R的一个候选码(Candidate Key)。若关系模式R有多个候选码,则选定其中的一个作为主码(Primary Key)。v 主属性是指在任一候选键中出现的属性。2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君第四章第四章 关系数据库设计规范化理论关系数据库设计规范化理论4.1 规范化问题的提出规范化问题的提出4.2 函数依赖函数依赖4.3 码(键)的概念码(键)的概念4.4 关系模式的范式关系模式的范式 4.5 小结小结2022年8月3日北京电

    12、子科技学院计算机系北京电子科技学院计算机系 张克君张克君4.4 关系模式的范式关系模式的范式2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君图图4.1 4.1 范式关系图范式关系图4.4 关系模式的范式关系模式的范式v 关系模式:2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君SLC(Sno,Sdepartment,Slocation,Cno,Result)学生学生-宿舍宿舍-课程(学号,院系,宿舍,课程编号,成绩)课程(学号,院系,宿舍,课程编号,成绩)主码为:Sno、Cno其中的函数依赖如下。(1)Sno、Cno完全决定Res

    13、ult,部分决定Sdepartment,部分决定Slocation。(2)Sno决定Sdepartment。(3)Sno决定Slocation。(4)Sdepartment决定Slocation(同一个系的学生住在一起)。有没有有没有问题问题?4.4 关系模式的范式关系模式的范式v 1插入异常(1)假如新生刚刚入学,没有选课,没有课程编号,又因为码不能为空,所以新生信息不能插入。(2)假如一个学院刚刚成立没有学生,这么院系的信息也无法插入。v 2删除异常(1)假如选修同一门课程的学生全部毕业,删除所有毕业学生信息的同时,也把选课信息一并删除了,导致删除异常。(2)同样地,所有的学生都毕业后,院

    14、系的信息也被删除了。v 3数据冗余大v 4修改复杂2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君4.4 关系模式的范式关系模式的范式2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君图图4.2 4.2 范式解决问题图范式解决问题图4.4.1 第一范式(第一范式(1NF)v 如果一个关系模式R的所有属性都是不可分的基本数据项,则R1NF。即1NF 规范化的就是消除关系模式中的非原子属性。v 在任何一个关系数据库系统中,1NF是最起码的要求,不满足1NF的数据库就不能称作关系数据库。2022年8月3日北京电子科技学院计算机系北京电子科

    15、技学院计算机系 张克君张克君4.4.2 第二范式(第二范式(2NF)虽然关系模式示例SLC满足1NF能称其为关系数据库了,但是会存在上述的种种问题。将SLC分解成如下几个关系模式。(1)SC(Sno,Cno,Result)主码为Sno、Cno。函数依赖关系为:Sno、Cno决定Result。(2)SL(Sno,Sdepartment,Slocation)主码为Sno。函数依赖关系为:Sno决定Sdepartment,Slocation;Sdepartment决定Slocation。上述(1)的问题有所解决,是因为取消了关系模式中的部分函数依赖关系。2NF的定义如下。若关系模式R1NF,并且每一

    16、个非主属性都完全依赖于R的码,则R2NF。2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君4.4.3 第三范式(第三范式(3NF)关系模式示例SLC经过分解成SL和SC解决了(1)的问题,但是依旧存在(2)的问题。进一步将SL分解成:(1)SD(Sno,Sdepartment)主码为Sno函数依赖关系为:Sno决定Sdepartment。(2)DL(Sdepartment,Slocation)主码为Sdepartment。函数依赖关系为:Sdepartment决定Slocation。上述(2)的问题有所解决,是因为消除了SLocation依赖于Sdepartme

    17、nt依赖于Sno的这种传递依赖关系。3NF3NF的定义如下。的定义如下。如果关系模式如果关系模式R R(U U,F F)中,不存在候选码)中,不存在候选码X X,属性组,属性组Y Y以及非主属性组以及非主属性组Z Z(Z Z不属于不属于Y Y),使得),使得X X决定决定Y Y,Y Y决定决定Z Z和和Y Y不决定不决定X X成立,则成立,则R R3NF3NF。简单来说就是在。简单来说就是在R R2NF2NF的基础上,非主属性都不的基础上,非主属性都不传递依赖于任何候选码。传递依赖于任何候选码。2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君4.4.4 BC范式

    18、(范式(BCNF)v 设关系模式R(U,F)属于1NF,对于R的每个函数依赖XY,若Y不属于X,则X中必含有候选码,那么R属于BCNF。简单来说,就是比3NF更进一步,所有的属性包括主属性和非主属性都不能传递依赖于候选码。v 如果一个关系数据库中的所有关系模式都属于BCNF,那么在函数依赖范畴中,这个关系数据库已实现了模式的彻底分解,达到了最高的规范化程度,消除了插入异常和删除异常的问题。2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君第四章第四章 关系数据库设计规范化理论关系数据库设计规范化理论4.1 规范化问题的提出规范化问题的提出4.2 函数依赖函数依赖4

    19、.3 码(键)的概念码(键)的概念4.4 关系模式的范式关系模式的范式 4.5 小结小结2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君4.5 小结小结v(1)第一范式(1NF)如果一个关系模式R的所有属性的域都是原子的,则称R是属于1NF的关系模式。v(2)第二范式(2NF)因为我们没有理由设计一个属于2NF但不属于3NF或更高范式的数据库模式,所以这里就不再讨论它了。v(3)第三范式(3NF)如果关系模式R(U,F)中的所有非主属性都不传递依赖于R的任何候选码,则称R是属于3NF的关系模式。v(4)Boyce-Codd范式(BCNF)如果关系模式R(U,F)

    20、的所有属性(包括主属性和非主属性)都不传递依赖于R的任何候选键,则称R是属于BCNF的关系模式。2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君4.5 小结小结v 规范化的优点是明显的,它避免了大量的数据冗余,节省了空间,保持了数据的一致性,在进行插、删、改时减少了I/O次数,加快了插、删、改的速度。如果一个数据库的记录经常改变,这个优点就更加明显了。它最大的缺点是,由于关系模式分解很细,在实际应用中很多经常一起使用的信息放在数据库的不同表中,在进行查询操作时,要把多个表连接在一起才能获得所需的信息,而表和表的连接花费是非常大的。在当今信息爆炸增长的时代,在多个表连接查询效率上出现了很大的问题,因此现在常常采取用空间换时间的方法,允许数据有大量的冗余,以加快查询的效率。这时数据库满足第一范式即可。2022年8月3日北京电子科技学院计算机系北京电子科技学院计算机系 张克君张克君

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:数据库原理与系统开发教程第04章-关系数据库设计规范化理论.ppt
    链接地址:https://www.163wenku.com/p-3426549.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库