关系数据库中的范式选择_第1页
关系数据库中的范式选择_第2页
关系数据库中的范式选择_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

关系数据库中的范式选择

学校已经开发了一套捐赠管理系统。由于建设阶段的数据库没有进行标准化设计,数据库中的数据存在一些问题,如数据冗余、输入异常、删除异常并修改异常。为了解决数据库设计中出现的这些问题,设计组对数据库重新进行了设计,第二次设计采用了数据规范化设计,对部分关系模式进行了分解,使数据库中的每个关系模式最低都达到了3NF。经过重新设计的数据库,消除了数据冗余、插入、修改及删除等异常现象,达到了预期的设计目的。由此可见,数据库规范化设计在实际信息系统是十分重要的,所以为了使设计的数据库模式达到最优,人们通常使用关系数据库的规范化。1数据库关系的标准化1.1各种捐赠类型,有校企直接关系(1)函数依赖。概念:是指关系中各属性或属性组之间的相互依赖关系。它是数据库关系规范化的理论基础。是给定一个关系模式R(U),X,Y是U的子集。对于X的每一个确定的值在任何时刻Y都有只有一个确定的值与之对应,则称X函数确定Y或Y函数依赖于X,记作X→Y。(2)完全函数依赖。概念:如果属性Y函数依赖于复合属性X,且不与X的任何子集函数相依赖,则称“Y完全函数依赖于X”。示例:有校友捐赠管理系统中有如下的关系模式:受益人信息(捐赠编号,受益人身份证号,受益金额,使用说明),“捐赠编号,受益人身份证号”→“受益金额”,是完全函数依赖。(3)部分函数依赖。概念:对于一个函数依赖:X→Y,如果存在Z∈X(Z属于X),且有Z→Y成立,则称“Y部分函数依赖于X”。示例:有校友捐赠管理系统中如下的关系模式:捐赠信息(捐赠编号,捐赠校友,捐赠时间,捐赠金额,捐赠类型,受益人身份证号,受益人姓名,受益人所在单位),其中捐赠信息的主码为复合码(捐赠编号+受益人身份证号),其中“受益人身份证号—>受益人姓名,捐赠编号->捐赠校友”与主码是部分函数依赖。(4)传递函数依赖。概念:在R(U)中,如果X→Y,Y→X,Y→Z,则称Z对X传递函数依赖。校友捐赠管理系统中有如下的关系模式:校友信息(校友编号,姓名,工作单位,职务,班级,院系,入学年份,身份证号)“校友编号→班级,班级→院系,入学年份”,则院系传递依赖于校友编号。在以上函数依赖的各示例中是校友捐赠管理系统第一次没有依照数据库规范化设计的关系模式,如果插入数据,会存在各种数据冗余现象。所以进行规范化设计势在必行,而数据库进行规范化设计都是通过范式来体现的。1.2关系模式2nf,3nf关系数据库中的关系是满足一定要求的,满足不同程度要求的为不同范式。就可以构成不同的范式级别,一般分为:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、BC范式(BCNF)、第四范式(4NF)和第五范式(5NF)。在实际应用中达到3NF即可,所以我们只在此文档中介绍1NF、2NF和3NF。(1)第一范式(1NF)。定义:在关系模式R(U)中,如果每一个分量都是不可再分的数据项,即原子项,称为第一范式(1NF)。第一范式是对关系的最低要求。校友捐赠管理系统中有如下的关系模式:捐赠信息(捐赠编号,捐赠校友,捐赠时间,捐赠金额,捐赠类型,受益人身份证号,受益人姓名,受益人所在单位),是1NF。(2)第二范式(2NF)。定义:如果关系模式R为第一范式,且R中每个非主属性完全函数依赖于R的主码(复合码),则称R为2NF模式。校友捐赠管理系统中有如下的关系模式:捐赠信息(捐赠编号,捐赠校友,捐赠时间,捐赠金额,捐赠类型,受益人身份证号,受益人姓名,受益人所在单位),这个关系模式是1NF而不是2NF,因为此主码为复合码(捐赠编号+受益人身份证号),而其中“受益人身份证号—>受益人姓名,捐赠编号->捐赠校友”与主码是部分函数依赖,所以它不满足第二范式的条件。如果想把以上关系模式分解为第二范式,解决办法只有消除部分函数依赖。方法如下:(1)把对主码部分函数依赖的非主属性和决定它们的主属性独立出来,放在一个关系模式中。对主码完全函数依赖的非主属性与决定它们的主码放在一个关系模式中。(2)再检查分解后的新模式,如果仍不是2NF,则继续按照前面的方法进行分解,直到达到要求。关系模式捐赠信息的分解结果如下:捐赠信息(捐赠编号,捐赠校友,捐赠时间,捐赠金额,捐赠类型),受益人信息(捐赠编号,受益人身份证号,受益人姓名,受益人所在单位)(3)第三范式(3NF)。定义:如果关系模式R为第二范式,且R中每个非主属性都不传递函数依赖于R的某个非主属性,则称R为3NF模式。关系模式校友信息(校友编号,姓名,工作单位,职务,班级,院系,入学年份,身份证号)是不是3NF,答案是否定的,由“校友编号→班级,班级→院系”,可以推出“校友编号→院系”,院系传递依赖于校友编号,所以此关系模式不满足3NF。若想将此关系模式满足3NF,只有消除传递函数依赖。方法如下:(1)把造成传递函数依赖的决定因素连同被它们决定的属性独立放在一个关系模式中,直接对主码函数依赖的非主属性与决定它们的主码放在一个关系模式中。(2)检查分解后的新模式,如果不是3NF,则继续按照前面的方法进行分解,直到达到要求。关系模式校友信息的模式分解如下:校友信息(校友编号,姓名,工作单位,职务,身份证号),班级信息(班级,院系,入学年份)2关系二重性原则规范化的过程是逐步消除关系模式中不合适的数据依赖的过程,使得模式中的各关系模式达到某种程度的“分离”。即“一事一地”的模式设计原则。让一个关系描述一个概念、一个实体或者实体间的一种联系。若多于一个概念就把它“分离”出去。其过程如图所示:过程是通过对关系模式的分解来实现的,把低一级的关系模式分解为若干个高一级的关系模式,但是分解不是唯一的,最小冗余的要求必须以分解后的数据库能够表达原来数据库所有信息为前提实现的。3数据库模式的选择基于数据库关系的规范化,又称数据库正规化、标准化,是数据库关系模式设计中的一系列原理和技术。通过第二次对数据库进行规范化的设计,使校园捐赠管理系统的数据库关系模式都达到了3NF,消除了数据冗余、插入、删除和修改异常现象。但是规范

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论