数据库 第九章第二次学习记录

目录

学习目标

学习内容


学习目标

        1.函数依赖的基本概念

        2.函数依赖的术语、符号

        3.函数依赖的推理规则

        4.函数依赖集的闭包和候选键求解方法

学习内容

1.基本概念

        所谓函数依赖,广义上就是关系模式中各属性之间的依赖关系。

        狭义上则是设有关系模式R(A1,A2,……,An),X和Y均为{A1,A2,……,An}的子集,r是R的任一具体关系,t1、t2是r中任意的两个元组。如果由t1[X]=t2[X]可以推导出t1[Y]=t2[Y],则称X函数决定Y,或Y函数依赖于X,记为X\rightarrowY。注意:只要t1[X]=t2[X],t1[Y]=t2[Y]成立,就有X\rightarrowY。

2.术语及符号

        设有关系模式R(A1,A2,……,An),X和Y均为{A1,A2,……,An}的子集,则有以下结论:

        

术语符号表

则有

 X\rightarrowY,但Y不包含于X

 X\rightarrowY是非平凡的函数依赖

 Y不函数依赖于X

X \overset{/}{\rightarrow}Y

 X\rightarrowY

X为决定因子

 X\rightarrowY,且 Y\rightarrowX

X \leftrightarrowY

 X\rightarrowY,且对于X的一个任意真子集X‘都有X’\overset{/}{\rightarrow}Y

Y完全函数依赖于X,记为X\overset{f}{\rightarrow}Y X‘ \rightarrowY成立 Y部分函数依赖于X,记为X \overset{p}{\rightarrow}Y

 X\rightarrowY(非平凡函数依赖,且Y\overset{/}{\rightarrow}X)、Y\rightarrowZ

Z传递函数依赖于X K为关系模式R的一个属性或属性组,满足:K \overset{f}{\rightarrow}A1,K \overset{f}{\rightarrow}A2,……,K \overset{f}{\rightarrow}An

称K为关系模式R的候选键

称包含在候选键的属性为主属性

称不包含的为非主属性

 3.推理规则

Armstrong公理及其推论

自反律:若Y \subseteqX \subseteqU,则X \rightarrowY在R上成立。即一组属性函数决定它的所有子集 增广律:若X \rightarrowY在R上成立,且Z \subseteqU,则XZ \rightarrowYZ在R上也成立 传递律:若X \rightarrowY和Y \rightarrowZ在R上成立,则X \rightarrowYZ在R上也成立 推论.合并规则:若X \rightarrowY和X \rightarrowZ在R上成立,则X \rightarrowYZ在R上也成立 推论.分解规则:若X \rightarrowY和Z \subseteqY在R上成立,则X \rightarrowZ在R上也成立 推论.伪传递规则:若X \rightarrowY和YW \rightarrowZ在R上成立,则XW \rightarrowZ在R上也成立 推论.复合规则:若X \rightarrowY和W \rightarrowZ在R上成立,则XW \rightarrowYZ在R上也成立

4.闭包与候选键

        (1).函数依赖集的闭包

                1.定义:在关系模式 R(U,F)中,U 是 R 的属性全集,F是R上的一组函数依赖。
设X、Y是 U 的子集,对于关系模式 R 的任一关系 r,如果r满足 F,则r满足 X\rightarrowY,那么
称F逻辑蕴涵X\rightarrowY,或称函数依赖 X\rightarrowY 可由 F导出。所有被F蕴涵的函数依赖的全集称为F的闭包,记作F^{+}

                2.对关系模式R(U,F),应用Armstrong公理系统系统计算F^{+}​​​​​​​的过程

                        步骤一:初始,F^{+}​​​​​​​=F。

                        步骤二:   对F^{+}​​​​​​​中的每个函数依赖f,在f上应用自反性和增广性,将结果加入F^{+}​​​​​​​​​​​​​​中;对F^{+}​​​​​​​中的一对函数依赖f1和f2,如果f1和f2可以使用传递律结合起来,则将结果加入F^{+}​​​​​​​中。

                        步骤三:重复步骤二,直到F^{+}​​​​​​​不在增大为止。

        (2).属性集闭包

                1.定义:设有关系模式 R(U,F),U 为 R 的属性集,F是R上的函数依赖集,X是
U 的一个子集(X\subseteq U)。用函数依赖推理规则可从 F 推出的函数依赖 X\rightarrowA 中所有 A 的集合,称为属性集X关于F的闭包,记为X^{+}(或X_{F}^{+})。即:X^{+}={A | X\rightarrowA 能够由 F根据 Armstrong 公理导出}
对关系模式 R(U,F)。

                2.求属性集X 相对于函数依赖集F的闭包X^{+}的算法如下:
                        步骤 一:初始,X^{+}= X。
                        步骤 二:如果 F 中有某个函数依赖 Y\rightarrowZ 满足 Y\subseteqX^{+}。则X^{+}= X^{+}U Z。
                        步骤 三:重复步骤 二,直到 X^{+}不再增大为止。

                3.求属性集闭包用途

                        1.简化判断X\rightarrowY是否为F所蕴涵

                        2.如果属性集X的闭包X^{+}包含了R中的全部属性,则X为R的一个候选键。

        (3)候选键的求解方法
                1.对于给定的关系模式 R(A1,A2,…,An.)和函数依赖集 F,现将 R 的属性分为如下四类:

                (1)L 类:仅出现在函数依赖左部的属性。
                (2)R类:仅出现在函数依赖右部的属性.

                (3)N 类:在函数依赖的左部和右部均不出现的属性。
                (4)LR 类:在函数依赖的左部和右部均出现的属性。


               2. 对 R 中的属性 X,可有以下结论:

                (1)若X是L类属性,则X一定包含在关系模式 R的任何一个候选键中;若X^{+}包背了R 的全部属性,则 X 为关系模式 R 的唯一候选键。

                (2)若X是R类属性,则X 不包含在关系模式 R的任何一个候选键中。

                (3)若X是N类属性,则X一定包含在关系模式 R 的任何一个候选键中。

                (4)若X是 LR 类属性,则 X 可能包含在关系模式 R 的某个候选键中。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值