首页 关系模式规范化实例析解

关系模式规范化实例析解

举报
开通vip

关系模式规范化实例析解TheStandardizationOfficewasrevisedontheafternoonofDecember13,2020关系模式规范化实例析解关系模式规范化实例析解摘要:关系模式是关系数据库的重要组成部份,其规范化理论在整个模式设计中占有主导地位。下面我们试图采用接近课堂教学的方式给出一个完整实例,希望对初学者有所帮助。关键词:关系模式;规范化;函数依赖;范式众所周知,关系模式是关系数据库的重要组成部份,其好坏直接影响关系数据库的性能。而关系模式的设计必须满足一定的规范化要求,从而满足不同的范式级别。...

关系模式规范化实例析解
TheStandardizationOfficewasrevisedontheafternoonofDecember13,2020关系模式 规范 编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载 化实例析解关系模式规范化实例析解摘要:关系模式是关系数据库的重要组成部份,其规范化理论在整个模式设计中占有主导地位。下面我们试图采用接近课堂教学的方式给出一个完整实例,希望对初学者有所帮助。关键词:关系模式;规范化;函数依赖;范式众所周知,关系模式是关系数据库的重要组成部份,其好坏直接影响关系数据库的性能。而关系模式的设计必须满足一定的规范化要求,从而满足不同的范式级别。[1],57)在指导关系模式的设计中,规范化理论占有着主导地位,其基本思想是:消除数据依赖中不合理的部份,使各关系模式达到某种程度的分离,使一个关系仅描述一个实体或者实体间的一种联系。[2]关系模式及其规范化的理论是我们设计和优化关系模式的指南。作为一种优秀而成熟的理论,学习和实践会有一定的难度,但在因特网和相关书籍中难得有比较全面的实例,给我们学习和实践造成不便。下面,我们试图采用接近课堂教学的方式给出一个完整的析解实例,以期对初学者有所帮助。一、实例假设某商业集团数据库中有一关系模式R(商店编号,商品编号,数量,部门编号,负责人),如果规定:(1)每个商店的每种商品只在一个部门销售;(2)每个商店的每个部门只有一个负责人;(3)每个商店的每种商品只有一个库存数量。试回答下列问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 :(1)根据上述规定,写出关系模式R的基本函数依赖;(2)找出关系模式R的候选关键字;(3)试问关系模式R最高已经达到第几范式为什么(4)如果R已达3NF,是否已达BCNF若不是BCNF,将其分解为BCNF模式集。二、预处理为了方便,我们用代号代 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 每个属性:A—商店编号B—商品编号C—部门编号D—数量E—负责人这样,有关系模式:R(U,F)U={A,B,C,D,E}三、根据上述规定,写出关系模式R的基本函数依赖为了消除关系模式在操作上的异常问题,优化数据模式,我们需要对关系模式进行规范化处理。而首先需要做的就是函数依赖,以便能确切地反映实体内部各属性间的联系。[2](P.经过对数据语义的 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 我们得出下面的依赖关系:1.语义:每个商店的每种商品只在一个部门销售,即已知商店和商品名称可以决定销售部门例:东店——海尔洗衣机———定在家电部销售所以得出函数依赖:AB→C2.语义:每个商店的每个部门只有一个负责人,即已知商店和部门名称可以决定负责人例:东店——家电部——部门经理一定是张三所以得出函数依赖是:AC→E3.每个商店的每种商品只有一个库存数量,即已知商店和商品名称可以决定库存数量例:东店——海尔洗衣机——库存10台所以得出函数依赖是:AB→D这样:在关系模式R(U,F)中,基本函数依赖集是:F={AB→C,AC→E,AB→D}。四、找出关系模式R的候选关键字根据函数依赖和关键字的基本定义,我们可以说:只有在最小函数依赖集中才能科学、正确地寻找候选关键字。那么何为最小函数依赖集又怎么求出F的最小函数依赖集呢根据函数依赖的相关定理我们得知:给定函数依赖集F,如果F中每一函数依赖X->Y∈F满足:(1)X->Y的右边Y为单个属性(F为右规约的);(2)F为左规约(即F中任一函数依赖X→Y∈F的左边都不含多余属性);(3)F为非冗余的(即如果存在F的真子集F’,使得F’≡F,则称F是冗余的,否则称F是非冗余的);则称F为最小函数依赖集,或称F是正则的。每一个函数依赖都等价于一个最小函数依赖集。[3]按照上面的三个条件进行最小化处理,我们可得到一个求最小函数依赖集方法:第一步,为满足条件1,根据分解性把右侧是属性组的函数依赖分解为单属性的多个函数;第二步,为满足条件2,逐一考察最新F中的函数依赖,消除左侧冗余属性;为满足条件3,逐一考察最新F中函数依赖X->Y,检查X->Y是否被F-{X->Y}所蕴涵,如果是,则X->Y是冗余的,可以删除。[4]所以,F的所谓最小函数依赖集就是去掉了多余依赖的F。按上面提供的算法依据具体计算如下:1.根据分解性先分解所有依赖的右边为单属性:可以看出:F={AB→C,AC→E,AB→D}中所有依赖的右边已为单属性。2.对所有依赖的左边为多属性的情况,消除左侧冗余属性:下面计算判断AB→C中有无无关属性:(1)设A→C,在F={AB→C,AC→E,AB→D}中计算A的闭包A+:首先,初始化A+={A};经观察,在F={AB→C,AC→E,AB→D}中,属性A不能“带进”任何属性。即A的闭包A+就是{A},也就是A+={A},所以AB→C中B不是无关属性。(2)设B→C,在F={AB→C,AC→E,AB→D}中计算B的闭包B+:首先,初始化B+={B};经观察,在F={AB→C,AC→E,AB→D}中,属性B不能“带进”任何属性。即B的闭包B+就是{B},也就是B+={B},所以AB→C中A不是无关属性。(3)同理,AC→E和AB→D中左边亦无无关属性。3、下面计算在F={AB→C,AC→E,AB→D}中有无冗余依赖:我们去掉AB→C,依赖集变为F={AC→E,AB→D}。首先,初始化{AB}+={A,B};在F={AC→E,AB→D}中,有AB→D,即AB可以“带进”D属性,这时{AB}+={A,B,D};经观察已不能再“带进”其它属性。即{AB}的闭包{AB}+就是{A,B,D},也就是{AB}+={A,B,D}。因为{A,B,D}中不包含C,所以我们说AB→C不是冗余依赖。同理计算,AC→E和AB→D亦不是冗余依赖。到此,才能肯定F={AB→C,AC→E,AB→D}已是最小函数依赖集。4、寻找候选关键字也需要一定的计算,下面计算R的候选关键字:在F={AB→C,AC→E,AB→D}中,我们对所有属性进行归类如下:L类属性,即仅在依赖左边出现的属性:A,BR类属性,即仅在依赖左边出现的属性:E,DLR类属性,即既在依赖左边又在依赖右边出现的属性:CN类属性,即既不在依赖左边又不在依赖右边出现的属性:无我们知道,L类属性和N类属性一定在候选关键字中,R类属性一定不在候选关键字中。所以,A,B一定在候选关键字中,E,D一定不在候选关键字中。这是定性的结果。具体的候选关键字是什么呢首先,计算L类属性AB的闭包:{A,B}+={A,B,D,C,E},因为AB的闭包{A,B,D,C,E}已经包含了所有R的属性,所以,{A,B}是唯一候选关键字。对于LR类属性参与候选关键字的相关计算稍嫌复杂,但这里已经找出了关系模式R{A,B,C,D,E}的唯一候选关键字。[3]五、关系模式R最高已经达到第几范式为什么很明显,关系模式R(A,B,C,D,E)中的所有属性值都是不可再分的原子项,所以该关系模式已满足第一范式。[1]那么关系模式R(A,B,C,D,E)是否满足2NF根据范式的相关定义我们得知:如果关系模式R(U,F)中的所有非主属性都完全函数依赖于任一候选关键字,则该关系是第二范式。[1]从上面的分析我们知道R(A,B,C,D,E)的唯一候选关键字是{A,B};非主属性是:C、D、E;函数依赖集是{AB→C,AC→E,AB→D}。所以:AB→C例:东店——海尔洗衣机———定在家电部销售AB→D例:东店——海尔洗衣机(——只在家电部销售)——库存10台AB→E例:东店——海尔洗衣机(——卖海尔洗衣机的部门——家电部)——部门经理是张三关系模式R(A,B,C,D,E)已满足2NF。进一步分析:非主属性C、D、E之间不存在相互依赖,即关系模式R(A,B,C,D,E)不存在非主属性对候选关键字的传递依赖,根据第三范式的定义,关系模式R(A,B,C,D,E)已满足3NF。[1]六、R已达3NF,是否已达BCNF若不是BCNF,将其分解为BCNF模式集由BC范式的定义得知:如果关系模式每个决定因素都包含关键字(而不是被关键字所包含),则R满足BC范式。[1]分析:在F={AB→C,AC→E,AB→D}中,有依赖AC→E的左边{A,C}不包含候选关键字{A,B},即AC→E是BCNF的违例。所以,关系模式R(A,B,C,D,E)不满足BCNF。1、下面分解关系模式R(A,B,C,D,E):分解3NF,有一定的规则。从BCNF违例AC→E入手,我们得到两个新关系模式:R1(A,C,E)和R2(A,C,B,D)R1由违例的所有属性组成,R2由违例的决定因素和R的其余属性组成。即:R1(商店编号,部门编号,负责人),实际上描述了“负责人”这一件事。R2(商店编号,商品编号,部门编号,数量),实际上描述了“商品库存”这一件事。已经做到了“一事一地”的原则了,应该能符合更高的范式,但还得经过计算和判断。2、下面我们判断R1是否满足BCNF:对于一个新关系,不知道它的依赖集,不知道它的候选关键字,我们需要借助原R(A,B,C,D,E)的依赖集F={AB→C,AC→E,AB→D}。
本文档为【关系模式规范化实例析解】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
建梅
教育
格式:doc
大小:811KB
软件:Word
页数:0
分类:企业经营
上传时间:2021-09-11
浏览量:5