通过示例理解数据库相关概念(三、函数依赖,闭包)

函数依赖(Function Dependency,FD):

数学形式的定义就不说了,有一个等价的定义可以仔细体会一下:

(FD的等价定义)   对X中的任一值x,\pi_Y(\sigma_{X=x}(r)) 的值仅有一个元组,则有X→Y。

注意基本单位是关系中的属性,即列与列之间的依赖关系(决定关系)

上例子:

已知关系SC(Sno,Cno,Grade,Credit):Sno,学号;Cno,课程号;Grade,成绩;Credit,学分;

一个学生可选多门课程,一个课程可由多个学生选。

根据常识也可以理解,在上述关系中,学号和课程号可以决定成绩,记为(Sno,Cno)\rightarrow Grade(成绩依赖于(学号,课程号))

故,由     1式   Cno\rightarrow Credit                                           

                2式   (Sno,Cno)\rightarrow Credit 肯定也成立

 

平凡依赖:

 对于2式,称Credit部分依赖于(Sno,Cno)

个人理解,读作(Sno,Cno)部分决定(有一部分就可以决定)Credit更方便记忆。

完全依赖:

对于1式,称Credit完全依赖于Cno

同样也是个人理解,读作Cno完全决定Credit更方便记忆

传递依赖:

X\rightarrow Y,Y\rightarrow Z 可得X\rightarrow Z

有了函数依赖的概念,便更容易理解范式的定义了。

闭包

了解闭包前需要知道一个概念,函数依赖集。

关系模式R上所有的函数依赖组成的集合就是函数依赖集。

函数依赖集F的闭包:F +

属性闭包:

         例子: 

                      属性集U 为ABCD,

                       F={A→B, B→C, D→B}

          求: A + , (AD) +, (BD)+

             A + = ABC  (AD)+ =  ABCD  (BD)+ = BCD

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值