ImageVerifierCode 换一换
格式:PPT , 页数:67 ,大小:887.50KB ,
资源ID:2628921      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/2628921.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库模式分解.ppt)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据库模式分解.ppt

1、习题讲解最小依赖集1)考查AB,去掉它,计算A+=AC,不包含B,不能去掉2)考查BA,去掉它,计算BBCA,包含A,可去掉它3)考查BC,去掉它,计算BB,不包含C,不能去掉4)考查AC,去掉它,计算AABC,包含C,可去掉它5)考查CA,去掉它,计算CC,不包含A,不能去掉1 2 3 4 5求解关系模式的候选码属性分类L类:只出现在函数依赖的左边的属性R类:只出现在函数依赖的右边的属性N类:在函数依赖的两边均未出现的属性LR类:出现在函数依赖的两边的属性求解关系模式的候选码对于给定的关系模式R及其函数依赖集F如果X是L或N类属性,则X必为R的任一候选码的成员如果X是R类属性,则X必不在任何

2、候选码中如果X是L和N类组成的属性组,且X+包含了全部属性,则X是R的唯一候选码前例n例:关系模式CTHRSG,若最小依赖集为F=C T,HR C,CS G,HS R,HT R,候选关键字为HS?n解:L、N类属性为HS,LR属性为CTR HS+=HS RCTG,包含全部属性,所以为唯一候选码n函数依赖图FDG用有向图表示的函数依赖,如XY即XYL L或或N N类属性有类属性有E E和和C,LRC,LR类属性类属性ADBADB,令,令X=EC,(EC)X=EC,(EC)+=U,EC=U,EC为为R R的唯一候选码。的唯一候选码。对对左边为单属性左边为单属性的函数依赖集求所有候选码的函数依赖集求

3、所有候选码(1)求F的最小依赖集F(2)作出函数依赖图FDG(3)从FDG图中找出无入边的属性集X(4)察看FDG图中有无回路,若无,则输出X并结束,否则进行下一步(5)从各独立回路独立回路独立回路独立回路中各取一个结点的属性与X组成一个候选码,重复取得所有可能的组合,即R的全部候选码IBOQSDZWYXSDIBOQ算法:对左边为多属性的函数依赖集求所有候选码(1)将R所有属性分为L,R,N,LR四类,并令X代表L,N两类,令Y代表LR类。(2)求X+,若X+包含R全部属性,则X即为R的唯一候选码,结束,否则转下一步。(3)在Y中取一属性A,求(XA)+,若它包含R的全部属性,则转下一步,否则

4、换一个属性重试,直至试完所有Y中的属性。(4)若已找出所有候选码,则结束,否则在Y中依次取两个、三个、,求它们的属性闭包,直至其闭包包含R的全部属性。n属于N-P完全问题(一类直观上难解可又找不出方法来证明它们的确难解的计算问题)n多属性下求解候选码的充分条件第六章关系数据理论6.1数据依赖6.2规范化6.3数据依赖的公理系统6.4模式的分解模式的分解6.4模式的分解n把低一级的关系模式分解为若干个高一级的关系模式的方法并不是唯一并不是唯一的。n只有能够保证分解后的关系模式与原关系模式等价,分解方法才有意义。关系模式分解的标准三种模式分解的等价定义分解具有无损连接性分解要保持函数依赖分解既要保

5、持函数依赖,又要具有无损连接性模式的分解(续)定义定义定义定义6.166.16关系模式R的一个分解:=R1,R2,Rn U=U1U2Un,且不存在 Ui Uj,F Fi i 为为 F F在在 U Ui i 上的投影。上的投影。定义定义定义定义6.176.17函数依赖集合XY|XY F+XY Ui 的一个覆盖 Fi 叫作 F F 在属性在属性 Ui Ui 上的投影上的投影模式的分解(续)定义定义定义定义6.166.16关系模式R的一个分解:=R1,R2,Rn U=U1U2Un,且不存在 Ui Uj,F Fi i 为为 F F在在 U Ui i 上的投影。上的投影。定义定义定义定义6.176.17

6、函数依赖集合XY|XY F+XY Ui 的一个覆盖 Fi 叫作 F F 在属性在属性 Ui Ui 上的投影上的投影模式的分解(续)n例:SL(Sno,Sdept,Sloc)F=SnoSdept,SdeptSloc,SnoSlocSL2NFn存在插入异常、删除异常、冗余度大和修改复杂等问题n分解方法可以有多种。模式的分解(续)SLSnoSdeptSloc95001CSA95002ISB95003MAC95004ISB95005PH B模式的分解(续)1.SL分解为下面三个关系模式:SN(Sno)SD(Sdept)SO(Sloc)分解后的关系为:SNSDSOSNSDSOSnoSdeptSloc95

7、001CSA95002ISB95003MAC95004PH95005模式的分解(续)n分解后的数据库丢失了许多信息丢失了许多信息n例如无法查询95001学生所在系或所在宿舍。n如果分解后的关系可以通过自然连接恢复为原来的关系,那么这种分解就没有丢失信息丢失信息模式的分解(续)2.SL分解为下面二个关系模式:NL(Sno,Sloc)DL(Sdept,Sloc)分解后的关系为:NLDLSnoSlocSdeptSloc95001ACSA95002BISB95003CMAC95004BPHB95005B模式的分解(续)NLDLSnoSlocSdept95001ACS95002BIS95002BPH95

8、003CMA95004BIS95004BPH95005BIS95005BPH模式的分解(续)nNLDL比原来的SL关系多了3个元组无法知道95002、95004、95005究竟是哪个系的学生n元组增加了,信息丢失了元组增加了,信息丢失了第三种分解方法3.将SL分解为下面二个关系模式:ND(Sno,Sdept)NL(Sno,Sloc)分解后的关系为:模式的分解(续)NDNLSnoSdeptSnoSloc95001CS95001A95002IS95002B95003MA95003C95004IS95004B95005PH95005B模式的分解(续)NDNLSnoSdeptSloc95001CSA9

9、5002ISB95003MAC95004CSA95005PHB与SL关系一样,因此没有丢失信息。具有无损连接性的模式分解n关系模式R的一个分解=R1,R2,Rn,若R与R1、R2、Rn自然连接的结果相等,则称关系,模式R的这个分解具有无损连接性无损连接性(Losslessjoin)n具有无损连接性的分解保证不丢失信息n无损连接性不一定能解决插入异常、删除异常、修改复杂、数不一定能解决插入异常、删除异常、修改复杂、数据冗余等问题据冗余等问题模式的分解(续)第三种分解方法具有无损连接性问题:这种分解方法没有保持原关系中的函数依赖SL中的函数依赖SdeptSloc,没有投影到关系模式ND、NL上保持

10、函数依赖的模式分解设关系模式R被分解为若干个关系模式R1,R2,Rn(其中U=U1U2Un,且不存在UiUj,Fi为F在Ui上的投影),若F所逻辑蕴含的函数依赖一定也由分解得到的某个关系模式中的函数依赖Fi所逻辑蕴含,则称关系模式R的这个分解是保持函数依赖的保持函数依赖的(Preservedependency)。保持函数依赖的模式分解例子nR(A,B,C),F=AB,CB分解1=(A,B,AB),(A,C)分解2=(A,B,AB),(B,C,CB)n计算分解1,2中3个模式的闭包FAB:A+=AB,B+=B,AB+=AB,则对AB的分解有函数依赖ABAC:A+=A,C+=C,AC+=AC,则对

11、AC的分解没有函数依赖BC:B+=B,C+=CB,BC+=BC,则对BC的分解只有函数依赖CBn分解1:只有AB,显然,分解1不具有依赖保持性n分解2:保留了所有函数依赖,具有依赖保持性分析两种分解的分析两种分解的分析两种分解的分析两种分解的依赖保持性?依赖保持性?依赖保持性?依赖保持性?第四种分解方法nSL(Sno,Sdept,Sloc)F=SnoSdept,SdeptSloc,SnoSlocn将SL分解为下面二个关系模式:ND(Sno,Sdept)DL(Sdept,Sloc)这种分解方法就保持了函数依赖。模式的分解(续)n如果一个分解具有无损连接性无损连接性,则它能够保证不丢失信息。n如果

12、一个分解保持了函数依赖函数依赖,则它可以减轻或解决各种异常情况。n分解具有无损连接性和分解保持函数依赖是两个互相独立的互相独立的标准标准。n具有无损连接性的分解不一定能够保持函数依赖。同样,保持函数依赖的分解也不一定具有无损连接性。模式的分解(续)第一种分解方法既不具有无损连接性,也未保持函数依赖,它不是原关系模式的一个等价分解SN(Sno),SD(Sdept),SO(Sloc)第二种分解方法保持了函数依赖,但不具有无损连接性。NL(Sno,Sloc),DL(Sdept,Sloc)SLSL(SnoSno,SdeptSdept,SlocSloc)F=SnoSdept,SdeptSloc,SnoS

13、locF=SnoSdept,SdeptSloc,SnoSloc模式的分解(续)第三种分解方法具有无损连接性,但未持函数依赖ND(Sno,Sdept),NL(Sno,Sloc)第四种分解方法既具有无损连接性,又保持了函数依赖ND(Sno,Sdept),DL(Sdept,Sloc)SL(Sno,Sdept,Sloc)F=SnoSdept,SdeptSloc,SnoSloc分解算法n算法6.2判别一个分解的无损连接性n算法6.3(合成法)转换为3NF的保持函数依赖的分解。n算法6.4转换为3NF既有无损连接性又保持函数依赖的分解n算法6.5转换为BCNF的无损连接分解(分解法)n算法6.6达到4NF

14、的具有无损连接性的分n解P196图5.11判别一个分解的无损连接性算法6.2(1)构造初始表:构造一个k行n列的初始表,其中每列对应于R的一个属性,每行用于表示分解后的一个模式组成。如果属性Aj属于关系模式Ri,则在表的第一i行第j列置符号aj,否则置符号bij。(2)根据F中的函数依赖修改表内容:考察F中的每个函数依赖XY,在属性组X所在的那些列上寻找具有相同符号的行,如果找到这样的两行或更多的行,则修改这些行,则使这些行上属性组Y所在的列上元素相同。修改规则是:如果y所在的要修改的行中有一个为aj,则这些元素均变成aj;否则改动为bmj(其中m为这些行的最小行号)。判别一个分解的无损连接性

15、注意:若某个bij被改动,则该列中凡是与bij相同的符号均做相同的改动。循环地对F中的函数依赖进行逐个处理,直到发现表中有一行变为a1,a2,an或不能再被修改为止。(3)判断分解是否为无损联接:如果通过修改,发现表中有一行变a1,a2,an,则分解是无损联接的,否则分解不具有无损联接性。ABCDEa1a2a3b14b15b21b22a3a4b25b31b32b33a4a5ABCDEa1a2a3a4a4a5a5b21b22a3a4a5a5b31b32b33a4a5初始表:初始表:初始表:初始表:最后结果最后结果最后结果最后结果:R1R2R3R1R2R3122例子:判断无损连接性ABCDEa1a

16、2a3a3a4a4a5ABCDEa1a2a3a4a5a3a4a5a4a5初始表:最后结果:R1R2R3R1R2R3122简易方法:只画关注数据判别一个分解的无损连接性已知关系模式已知关系模式R(ABCDE)及函数依赖集及函数依赖集F=AC,BC,CD,DEC,CEA验证分解验证分解=R1(AD),R2(AB),R3(BE),R4(CDE),R5(AE)是否是否为无损联接。为无损联接。通过修改发现表中第三行元素变为a1,a2,an,分解是无损联接。判别一个分解的无损连接性n定理:如果R的分解为r=R1,R2,nF为R所满足的函数依赖集合,分解r具有无损联接性的充要条件是:R1R2(R1R2)F+n或R1R2(R2R1)F+模式的分解(续)定义定义定义定义6.166.16关系模式R的一个分解:=R1,R2,Rn U=U1U2Un,且不存在 Ui Uj,F Fi i 为为 F F在在 U Ui i 上的投影。上的投影。定义定义定义定义6.176.17函数依赖集合XY|XY F+XY Ui 的一个覆盖 Fi 叫作 F F 在属性在属性 Ui Ui 上的投影上的投影判别一个分解的无损连接性n关系

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1