糖尿病康复,内容丰富有趣,生活中的好帮手!
糖尿病康复 > 数据库~如何快速 准确选取候选码(候选键)?

数据库~如何快速 准确选取候选码(候选键)?

时间:2020-12-26 03:55:08

相关推荐

数据库~如何快速 准确选取候选码(候选键)?

1, 定义:若关系中某一属性组的值能唯一地标识一个元组,则称该属性组为候选码(候选键)。

2.,条件:若W是候选码,则必须满足两个条件 ①W的闭包为全集U ②W没有冗余(如何求闭包,下一篇博客)

3.,求候选码的步骤:

设有关系模式R,U= {A,B,C,}为R的属性集, F为R上的函数依赖集

- ①只在F右部出现的属性,不属于候选码

- ②只在F左部出现的属性,一定存在于某候选码当中

- ③两边都没有出现的属性,一定存在于候选码中

- ④其他属性逐个与②③的属性结合,求属性闭包 ,直至X的闭包等于U。若等于U,则X为候选码

例题:关系模式R,U= {ABCDE}, F= {AB–>C, AB–>E, CDE–>AB}, 求候选码

解:

①没有只在F右部出现的属性

②D为只在F左部出现的属性,所以D一定在候选码中

③没有两边都没有出现的属性

④还有属性ABCE待考虑,逐个结合,求闭包

AD的闭包是AD,不等于U

BD的闭包是BD,不等于U

CD的闭包是CD,不等于U

ED的闭包是ED,不等于U (1个与之结合没找到候选码,继续两个与之结合)

ABD的闭包是 ABCDE,等于U √

ACD的闭包是ACD,不等于U

AED的闭包是AED,不等于U

BCD的闭包是BCD,不等于U

BED的闭包是BED,不等于U

CED的闭包是ABCDE,等于U √ (2个的结合找到了候选码,就不需要3个的结合了哦~)

因此,候选码是ABD 和 CED。

如果觉得《数据库~如何快速 准确选取候选码(候选键)?》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。