版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业论文(设计)题目城市居民户籍管理系统学生姓名学号院系专业指导教师本人郑重声明:1、持以“求实、创新”的科学精神从事研究工作。2、本论文是我个人在导师指导下进行的研究工作和取得的研究成果。3、本论文中除引文外,所有实验、数据和有关材料均是真实的。4、本论文中除引文和致谢的内容外,没有抄袭其他人或其他机构已经发表或撰写过的研究成果。5、其他同志对本研究所做的贡献均已在论文中作了声明并表示了谢意。作者签名:日期:#附录二译文JMathNorm:-个使用数学的数据库规范化工具AliYazicI1andZiyaKarakaya21计算机工程系,TOBBUniversityofEconomics&Technology,
安卡拉-土耳其.tr2计算机工程系,AtilimUniversity,安卡拉-土耳其.tr摘要:本文是关于设计一个完整的互动工具,名为JMathNorm。它是一种以数学为工具的关系数据库(RDB)。由同一作者开发的原型扩展,包括第二范式(2NF),而博伊斯-科德标准范式(BCNF)是对现存的第三范式(3NF)模型的补充。本研究开发的工具具备完整性,可用于实时数据库设计,同时,对数学基础薄弱的学生在学习数据库标准化基本概念时提供帮助。JMathNorm同样支持交互式模型,如封闭的基本设置操作模块的使用,和全面封闭的模块一起获得最小的函数依赖集和测试候选键属性。JMathNorm的GUI接口是用Java编写的,并利用Mathematica的JLink设施,以推动Mathematica的内核。简介一个关系数据库系统的设计包括四个主要阶段,(i)用户需求,(ii)概要设计,(ii)逻辑设计,最后,(iv)物理设计[2]。在概念设计阶段,设置业务规则转化为设置一个实体和属性以及它们之间的关系。扩展实体关系(EER)建模工具可以被用来对这个变化的图形表示。在EER建模工具中所确定的实体随后进入一个关系模型(R1,R2,R3,……,Rn),其中每个Ri代表DB模式的其中一个关系。一个临时指定的主键,和和一个架构(FD)中每个函数依赖集的属性是作为本阶段的结果确定。作为副产物的逻辑设计阶段,每个Ri被很好的分组,从而形成这样一个事实,即一个组通过关系连接到其他组群[3]。本文的最终目标是执行这个相当机械的转变过程,称为标准化,以一种有效的自动方式。商业数据库设计工具没有为自动标准提供一个完整的解决方案,为实现这个目标目前现存的标准化工具需要高水平编程工具和复杂的数据结构。两个这样的在Prolong语言中讨论了实现[4,5]。另一个基于自动转换的研究给出了[6],其中UML是用于访问对象约束语言(0CL)用以建造一个表达式编码元级类型的使用类。在[3]中,它给出了另一种接近标准化的方式,其目标是把FD转换为DB从而替代依赖常规定义的常规格式。这种方法对IS/IT的学生也是在同一项研究中的测量方法。看来,这种方式只对在课堂环境中的小型结构有用,并且特别的不适合运用于自动标准化。在[7]中给出了一个用于自动标准化的网络工具,它可以标准化一个DB框架最大值为10FD的,其最多可为3NF。这篇文章是对工作的延伸[1],并讨论了一个完整的标准化工具,称为JMathNorm,它使用在文献中找到的抽象算法[2,9,13]实现2NF,3NF和BCNF。JMathNorm的标准化模块都使用基本立标/设置操作写在数学[8]中,用户界面设计采用Java语言,最后,数学模块的执行是运用MathematicalJavaLink(JLink)实用程序完成的。本文所提到的研究设计方法与微型工具[9]中给出的相类似。然而,JMathNorm为教育目标提供了一些额外方面,并且在高效实现的过程中没有运用复杂的数据结构,如指针等。本文详细部分组织如下。第2节简要回顾了数据库的规范化和标准化算法中使用的一些基本功能。在第3节数学实现模型BCNF中给出了算法的实现。JMathNorm工具在第4节中被主要涉及。有关该工具的评论和今后的工作情况概况将在最后一节展现。对标准化算法的讨论函数依赖(FD)是对数据(DB)模型中关系Ri属性集的限制。在函数依赖(FD)中,两个属性X和Y之间,定义X->Y,这意味着存在至少一个Y值对应于X值(决定)[2,10,11]。在这种情况下,我们称X决定Y或者Y依赖于X。例如,对于一个DB架构PURCHASE-ITEM={orderNo,partNo,partDescription,quantity,price},和PK={orderNo,partNo},使用了业务规则能够详细介绍FD。FD1:{orderNo,partNo}f{partDescription,quantity,price}FD2:partNofpartDescription对于一个给定的架构,其他FD中的属性能够从阿姆斯特朗(Armstrong)的推理规则[2]推断出来。另外,对于集合X属性,可以从188AYaziciand乙Karakaya推出在X的封闭集,X的闭包,被X决定的,基于FD的F集合的元素。集闭包是标准化算法的基本功能之一,将被称为(的闭包集[1]的续集。在X的全闭包集和X++中,同样存在与X闭包集相类似的功能,该功能能返回FD集中所有全依赖于X的属性。这个功能是用来删除部分依赖将其转换为2NF。一种全封闭函数的算法如下[9]:全必报算法X(X:属性集;F:FD集);返回tempX;tempX:=X;repeatOldX:=tempX;foreachFDYfZinFdoifYutempXthenifnot(YuX)thentempX:=ZUtempXelseifY=XthentempX:=ZUtempX;until(length(oldX)=length(tempX));returntempX;定义一个FD的F集,属性B是与X-〉A无关联的[11],如果X=ZB,XHZ,,和AGZ+。函数依赖H集合称为一个最小覆盖[1,5],如果在F集中每个都依赖于H,准确的说是在右边的属性依赖于H,而没有左边多余的属性,并且依赖H的能从其他依赖H的派生出来。其实,一个最小覆盖的计算由“外源属性消除”下设其次是“冗余依赖消除”组成。标准化算法在此次研究中认为利用FD使用设置最小覆盖。此外,他们高效的计算至少O(n2)表达式,其中n是FD中的变量。标准化是一个循序渐进的处理过程,它将DB数据库模式转化成一系列子函数模式。在通常研究中,我们所使用的形式是(2NF,3NFandBCNF),它的成功之处在于将每个Ri分解为集的关系,并消除了关系中的冗余。反之,标准化DB数据库模式的缺点是DB架构更新异常[13]这可能会破坏该数据库的完整性。如果一个关系中的元组不可再分,它被称为第一范式(1NF)。在这项研究中,它是假设所有的关系都符合这个条件。在第二范式中,任一关系都不存在部分依赖关系。值得注意的是,在上面的例子中,因为FD2,所以这个关系不是2NF。3NF关系禁止其属性间具有传递依赖关系。最后,在BCNF范式中,一个非主键属性不能决定主要属性(主键的任何部分)。在[9]中2NF算法带有属性保存特点,JMathNorm对该算法进行了轻微修改,以消除部分依赖关系,因此将数据库模型转化为2NF。伯恩斯坦的合成算法[1,12]的实施直接为属性和FD中的F集提供了3NF关系。原型依赖被保护了,然而,在这个算法中无法保证不能加入属性[1]。在某些3NF数据库模式,可能会存在从一个非主属性变为主属性的情况。BCNF范式的成功之处就在于消除了这种依赖。现给出不能加入属性[2,12]的BCNF算法,描述如下。算法BCBF(R:在3NF中的属性集;F:FD集);用BCNF返回Q;D:=R;whilethereisaleft-handsideXofaFDXfYinFdoifXfYviolatesBCNFthendecomposeRintotwoschemasRm:=D一Y;andRn:=XUY;returnQ:=RmURn;这个功能违背了BCNF的测试,如果所给的FD违背了BCNF计算X闭包的条件。如果它包含R的所有属性,那么R就不违背BCNF约束条件,否贝眼违背BCNF约束条件并且需要分解为Rm和Rn,如上述所示。数学实现3.1数学实现BCNF在图1中,用例图用工具给出了功能和模块的证明。图1的任务是有效利用数学模块实现只具有数学列表结构和著名集运算[8]。这些操作包括:Union[],Complement[],Intersection[],MemberQ[],Extract[],Append[],Length[],andSort[]。FD的F集有两个列表,一个是左手边(FL),另一个是右手边(FR)。显然,在这样一个列表中属性的顺序是重要的,并且应该受到照顾保持整个标准化的进程。对上面的例子,FD集在数学中表示如下:FL={{orderNo,partNo},{orderNo,partNo},{orderNo,partNo},partNo}FR={partDescription,quantity,price,partDescription}Accordingly,FL[[i]]—FR[[i]],fori=1,2,3,4。作为一个例证,BCNF数学算法代码如下。给定一个FD集和一个3NF关系R,BCNF算法首先寻找一个BCNF使用功能BCNF侵犯。当发现时,它返回在Q二分关系约束满足BCNF。BCNF[FL_,FR_,R_]:=Module[{i,X,D,Q,DIF,REL},D=R;Q={};For[i=1,i<=Length[FL],i++,If[Length[FL[[i]]]>1,X=Sort[FL[[i]]],X={FL[[i]]}];flag=violatesBCNF[FL,FR,X,FR[[i]],U];If[flag==1,REL=Union[X,{FR[[i]]}];Q=Union[Q,{REL}];RC=Complement[R,{FR[[i]]}];DIF=Intersection[R,RC];Q=Union[Q,{DIF}];];];Return[Q];];ViolatesBCNF[FL_,FR_,X_,Y_,R_]:=Module[{XP,flag},XP=Sort[ClosureX[FL,FR,X]];If[XP==Sort[U],flag=0,flag=1];Return[flag];];JNFFlIIClCIosjrXIsItaKayMinimilCavarINFv'alateaBGNFElm.Extra.Attribs.-jags-JNFFlIIClCIosjrXIsItaKayMinimilCavarINFv'alateaBGNFElm.Extra.Attribs.-jags-v=Lsas»y欧氐J--.图1标准化模型用例图一个BCNF的例子,它违反了有关的由上面的代码分解如下。考虑一个FD关系CLIENT-INTERVIEW={clientno,interviewdate,interviewtime,staffno,roomno},其FD如下:FD1:{clientNo,interviewdate}f{interviewtime,staffno,roomno}FD2:{staffno,interviewdate,interviewtime}fclientnoFD3:{staffno,interviewdate}froomNo在这个关系{clientno,interviewdate}和{staffno,interviewdate}中,它们都是候选键,并且具有共同的属性。而且,BCNF约束违反了FD2。BCNF模型在所需要的模块参数产生分解Q后的运行结果如下。Q={{interviewdate,roomno,staffno},{clientno,interviewdate,interviewtime,staffno}}4.JMathNorm用户接口一个交互式的工具JMathNorm使用GUIJava编写的,旨在实现图1中所示的系统。每个算法的实现为数
学模块,JLink(JavaLink)的数学设施利用数学的内核加载模块和执行这些规定。JMathNorm始于一个对
话框要求与数学内核相关的途径。数学函数的标准化之后加载。从而,只有对这些模块调用语句传递给数
学功能以收到结果字符串。返回的结果仅仅是一个字符串集的体现。这个字符串被分解为所需要的数据结构。在JMathNorm中,结果存储成Java的矢量数据结构。±JMathNormFDOpsNFormResultsOptionsHelpFDClosureF-ClosureElim-AttribsElim-DerPKTest图2JMathNorm's主菜单选项该接口提供了一个菜单驱动与系统交互。主窗口和业务主菜单显示在图2。JMathNorm'sFD的下拉菜
单可以被用来设立一个新FD设置,使用数据输入对话框打开一个现存的,保存或编辑操作。一个可以尝试
标准化的基本任务,即设置闭包,全闭包,消除多余属性,消除多余依赖属性,测试主键并获得通过最小
覆盖的基本操作的子菜单。这些行动构成了集理论基础上的标准化的所有算法,这些算法在前面的章节中
讨论过。此外,由于其象征性的性质,结果每次回来手动核查是相当繁琐的JMathNorm克服了这个问题,
它通过提供一个在课堂教学环境下的机制进行正规化理论的教育。数据库模式可以直接从NForm子菜单转
化为所需要的正规化的模式。作为关系正规化的结果,将原有的关系数据库模式分解为子关系模式,而这
些子关系模式是由系统结果子菜单显示出来的。在图3中,这个对话框定义了FD些子关系模式是由系统结果子菜
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026中国零碳建筑技术体系与标准认证制度建设研究报告
- 2026中国工业级3D打印材料性能突破与应用拓展
- 2026中国海上风电施工技术难点分析及装备升级路径研究
- 2026数字疗法产品医保支付路径探索与市场教育策略分析
- 2026生物医药行业市场现状及发展趋势与投资潜力研究报告
- 2026中文旅游行业市场发展现状与国际化竞争研究分析报告
- 教育机构课程顾问学生招生及服务效果考核表
- 2026中国智能运动装备制造行业市场现状分析及投资评估规划研究报告
- 2026中国激光设备制造业竞争态势与投资机会调研报告
- 2026中国游戏产业发展趋势与商业机会预测报告
- 2026中国电商ai应用白皮书-淘天集团
- 《物业设备设施管理(第2版)》-第六章
- 2026年环卫行业分析研究报告
- 【《镁空气电池的研究现状文献综述》2400字】
- 中等职业学校家校社协同育人指南(2025版)
- 2026年国开电大建筑力学形考题库检测模拟题【历年真题】附答案详解
- 教育研究方法(第2版)课件 邵光华 导言及第1-4章 教育研究基本理论 -教育调查研究
- 矿井安全风险监测预警管理制度
- CT防护教学课件
- 教育机构班主任学员管理效果与续费率绩效评定表
- 建筑工地三防安全培训课件
评论
0/150
提交评论