什么是关键码?

设关系模式R的属性集是U,X是U的一个子集,F是在R上成立的一个函数依赖集。如果X→U在R上成立(即X→U在中),那么称X是R的一个超键。如果X→U在R上成立,但对X的任一真子集都有→U不成立(即→U不在中,或者XU),那么称X是R上的一个候选键。

快速求解候选键的一个充分条件

对于给定的关系模式RE(, … ,  )和函数依赖集F,可将其属性分为以下四类。

(1)L类:仅出现在F中的函数依赖左部的属性;
(2)R类:仅出现在F的函数依赖右部的属性;
(3)N类:在F的函数依赖左右两边均未出现的属性;
(4)LR类:在F的函数依赖左右两边均出现的属性。

对于给定的关系模式R及其函数依赖集F,有一下结论。

(1)若X(X∈RE)是L类属性,则X必为RE的任意候选键的成员;
(2)若X(X∈RE)是L类属性,且包含了RE的全部属性,则X必为RE的唯一候选键;
(3)若X(X∈RE)是R类属性,则X不在任何候选键中;
(4)若X(Y∈RE)是N类属性,则X包含在R的任一候选键中;
(5)若X(X∈RE)是RE的N类和L类属性组成的属性集,且X包含了R的全部属性,则X
是RE的唯一候选键。

下面我们举例说明。

【例1】设有关系模式R(A, B, C, D)与它的函数依赖集F={D→B, B→D, AD→B, AC→D},求R的所有候选键。

解题思路:

通过考察F发现,A,C两属性是L类属性,故A、C两属性必在R的任何候选键中;

又由于=ABCD,即包含了R的全部属性,因此,AC是R的唯一候选键。

【例2】设有关系模式R(A, B, C, D, E, P)与它的函数依赖集F={A→D, E→D, D→B, BC→D, DC→A},求R的所有候选键。

解题思路:

通过考察F发现,C,E两属性是L类属性,故C,E两属性必在R的任何候选键中;

由于P是N类属性,故P属性也必在R的任何候选键中;

又由于= ABCDEP,即包含R的全部属性,因此,CEP是R的唯一候选键。

多属性函数依赖集候选键的求解算法

下面我们总结一下求解一个关系R的候选键的一般步骤:
(1)根据函数依赖集F,将R的所有属性分为L类、R类、N类和LR类等四类,并令X代表L类和N类属性,Y代表LR类属性;

(2)求,若包含了R的全部属性,则X即为R的唯一候选键,转到步骤(5);

(3)从Y中取一个属性A,求,若它包含了R的全部属性,则XA是R的一个候选键,再换另一个属性反复进行这一过程,直到试完Y中所有的属性;
(4)这次每轮从Y中取两个、三个、多个属性并到属性集X中,每轮仿照步骤(3)的动作,耐心地求出关系R的全部候选键;

(5)停止,输出结果。

【例3】设有关系模式R(A, B, C, D, E)与它的函数依赖集F={A→BC, CD→E, B→D, E→A},求R的所有候选键。
解题思路:

通过分析F发现,其所有的属性A、B、C、D、E都是LR类属性,没有L类、R类、N类属性;

因此,先从这些属性中依次取出一个属性,分别求它们关于F的闭包:

=ABCDE,=BD,=C,=D, =ABCDE

由于都包含了R的全部属性,因此,属性A、E分别都是R的一个候选键;

接下来,从关系模式R中取出两个属性,分别求它们关于F的闭包,但在取出两个属性时,只能从B,C,D三个属性中取出两个属性,因为属性A、E已经是R的候选键了,根据候选键的定义,它们就不可能再存在于其他的候选键中:

=ABCDE,=ABCDE,=BD

由于都包含了R的全部属性,因此,属性集BC,CD也分别都是R的一个候选键;

至此,关系模式R中不可能再存在别的候选键了,因此,关系模式R的所有的候选键分别是A、E、BC和CD。

参考资料:[1]陈志泊,王春玲,许福,范春梅.数据库原理及应用教程(第3版)[M].北京:人民邮电出版社,2014:136-137.

规范化理论:候选键的求解理论和算法相关推荐

  1. 一种结合混沌密码理论的彩色图象水印算法

    本文是本人毕业时发表的论文. 原文地址:http://www.ahcit.com/lanmuyd.asp?id=1972  摘  要  文章提出一种集混沌加密技术,小波变换,扩频技术为一体的彩色图像水 ...

  2. UA PHYS515A 电磁理论IV 时变电磁场理论6 用含时Green函数求解时变电磁场问题的例子

    UA PHYS515A 电磁理论IV 时变电磁场理论6 用含时Green函数求解时变电磁场问题的例子 在一个nuclear中有一些photon,photon受激产生e−,e+e^-,e^+e−,e+两 ...

  3. 【翻译】利用加速度求解位置的算法——三轴传感器

    cposture 一个小白的技术成长之路 [翻译]利用加速度求解位置的算法--三轴传感器 http://www.cnblogs.com/cposture/p/4378922.html 摘要      ...

  4. 利用加速度求解位置的算法——三轴传感器

    转载的一篇文章,跟自己做过的一个车载项目类似,也算是标记一下吧. ---------------------------------------分割线------------------------- ...

  5. 利用三轴加速度求解位移的算法—来自飞思卡尔方案

    在要求精度不高的情况,可以使用三轴加速度积分得到位移,飞思卡尔给出了官方方法,下文来自翻译说明 cache.freescale.com/files/senso- 摘要 此文档描述并使用MMA7260Q ...

  6. 【计算理论】计算复杂性 ( 计算理论内容概览 | 计算问题的有效性 | 时间复杂性度量 | 输入表示 | 时间复杂度 )

    文章目录 一.计算理论内容概览 二.计算问题的判定性 三.计算问题的 有效性 四.时间复杂性度量 五.算法有效性 数学定义需求 六.输入表示 七.时间复杂度 一.计算理论内容概览 计算理论分为 形式语 ...

  7. UA PHYS515A 电磁理论IV 时变电磁场理论2 Helmholtz方程与含时的Green函数

    UA PHYS515A 电磁理论IV 时变电磁场理论2 Helmholtz方程与含时的Green函数 上一讲的末尾我们介绍了Lorentz Gauge下的含时麦克斯韦方程: (∇2−1c2∂2∂t2) ...

  8. 理论计算机科学研究生,清华大学理论计算机科学中心姚期智组招收保送研究生,请帮忙发到虎...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 清华大学理论计算机科学研究中心,将招收2009级博士.硕士研究生,主要研究方向为通讯.量子计算复杂性.量子密码理论及创新研究.安全计算理论等计算机科学重大 ...

  9. 微软亚洲研究院成立理论中心,以理论研究打破AI发展瓶颈

    微软亚洲研究院成立理论中心,以理论研究打破AI发展瓶颈微软亚洲研究院成立理论中心,以理论研究打破AI发展瓶颈12月11日,微软亚洲研究院举办了2021理论学术研讨会,来自学术界和产业界的理论研究专家齐 ...

  10. 全国理论计算机科学年会2021,理论计算机科学论文,关于计算机维修参考文献2019年相关参考文献资料-免费论文范文...

    导读:这篇理论计算机科学论文范文为免费优秀学术论文范文,可用于相关写作参考. 2.017全国理论计算机科学学术年会 征文通知 由中国计算机学会理论计算机科学专业委员会主办,陕西师范大学计算机科学学院承 ...

最新文章

  1. ICLR 2020将采用远程会议,首次在非洲办会可能就这样泡汤了
  2. Microsoft Windows SDK for Windows 7 and .NET Framework 3.5 SP1 (ISO)
  3. 常用报文的解析与相互转换
  4. springMVC异常处理器:自定义异常处理器捕获系统异常,控制异常页面跳转
  5. Python用户交互以及数据类型
  6. ImportError: IProgress not found. Please update jupyter and ipywidgets.
  7. swf游戏保存进度_关于flash游戏swf文件的修改
  8. 13个不错的jquery图片放大器效果
  9. 洛谷P3709 大爷的字符串题 莫队
  10. LabWindows操作Excel
  11. 一种基于波状扩散特征分析的光斑检测方法
  12. PMP 项目质量管理
  13. 基于Python+kociemba+opencv的3阶魔方自动还原
  14. 碰撞、子弹路径、参考
  15. 直观上理解PCA中特征值和特征向量
  16. seq2seq 解释
  17. Trinity转录组无参组装
  18. 【day08~10】Java面向对象基础认识
  19. 改变边框线条与背景重叠的布局
  20. ITK——5. 利用ITK自身的多线程加速filter计算

热门文章

  1. mybatis-plus使用和原理剖析之逻辑删除
  2. Android APK安装后资源文件(res/assets)位置
  3. 媒体查询之响应式布局
  4. MIPS处理器 CPU控制信号
  5. JS实现省市县三级联动
  6. 计算机fdd,FDD 文件扩展名: 它是什么以及如何打开它?
  7. cinahl数据库怎么进入_CINAHL数据库的检索系统及相关检索方法
  8. Unity商店下载的文件保存路径
  9. Win11 安装 Linux 子系统
  10. 中科银谷:企查查天眼查的企业工商数据是从哪里来的?