您好、欢迎来到现金彩票网!
当前位置:秒速快三计划 > 属性闭包 >

R的属性集和函数依赖集

发布时间:2019-05-18 13:54 来源:未知 编辑:admin

  解题过程中,给定一个关系模式R(U,F),U={A1,A2,...,AN},F是R的函数依赖集,若,则X必为R的唯一候选关键字。对于试题(7),A选项,所以(AB)+=ABD不等于U,非候选关键字;B选项(DE)+=ABDE不等于U,所以DE非候选关键字;C选项,(CE)+=ABCDE不等于U,所以CE为候选关键字;D选项,所以DB非候选关键字。

  虽然这是标准的解题思路,但是,我感到很难理解。尤其是,求(AB)+的是什么,为什么=ABD?(DE)+为什么=ABDE?这个推导的过程是怎样的?请解答。谢谢。展开我来答

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  也就是说(个人解释):X的闭包是用关系依赖把X这个集合中的属性加到不能再加为止。

  再说说候选键,定义是:X-U在R上成立,但对于X的任意一个线-U不成立,则X是R上的候选键。

  也就是说(个人解释),X这个集合的子集不能完整地导出U,即X是最小的集合,它里面的元素不能再少了。更多追问追答追问那么,还有(CE)+=?我的推论过程是如下:

  因为有C,C是属于L属性的,在-的左面,所以,C也可以加进来。这样(CE)+=ABCDE=U;

  答案是=U,不过,我感到对于C是否加进来比较勉强,你有QQ号吗?我想仔细地请教。追答C本身就在集合里面了,选候选键就是要看是不是左属性能把U推出来。我没QQ。追问对于单一的左属性,我觉得比较容易推导,但是,遇到两个字母,三个字母的,例如:AB,BCD等,到底是一个一个字母按照顺序推导,比如AB的,则先用A推导,再用B推导,如果(AB)+则AB本身就包含在U里,对吗?如果,题目的条件里,没有单独的A,B的线索,但是有其他的条件,例如:BC-D,那么,可以认为C-D吗?可以认为B-D吗?我感到这个部分是我比较含糊不明白的地方,你能进一步阐述一下吗?追答推导闭包的时候,例如你这题(DE)+,可以把E单独提出来做E-A,把A加进来,因为这时候求的是“闭包”,看闭包的定义,这时候可以用子集来确定。{E}是{DE}的子集。

  至于你刚才说的BC-D,不可以认为C-D,也不可以认为B-D,因为这个不是在求闭包,这时是在确定“关系依赖”。可以这样理解:BC共同决定了D,除非关系依赖里面有“部分依赖”,即不满足2NF。(看一下部分依赖的定义)。

http://isaegil.net/shuxingbibao/14.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有