数据库函数依赖

数据库函数依赖

@author:Jingdai
@date:2021.04.24

函数依赖

R ( U ) R(U) R(U)是属性集合 U = { A 1 , A 2 , . . , A n } U=\{A_1,A_2,..,A_n\} U={A1,A2,..,An}上的一个关系模式, X X X Y Y Y U U U上的两个子集,若对 R ( U ) R(U) R(U)的任意一个可能的关系 r r r r r r中不可能有两个元组满足在 X X X中属性值相等而在 Y Y Y中属性值不等,则称“ X X X函数决定 Y Y Y”或者“ Y Y Y函数依赖于 X X X”,记做 X X X Y Y Y

示例:

U = {学号, 姓名, 年龄, 班号, 班长, 课号, 成绩}:  学号 → {姓名, 年龄}
     班号 → 班长

特性:

  • X X X Y Y Y Y Y Y X X X,则称 X X X Y Y Y是非平凡的函数依赖。(即 Y Y Y中有不被 X X X包含的属性)
  • X X X Y Y Y,则对于任意两个元组,若 X X X上的值相等,则 Y Y Y上的值一定相等。
  • 若一个关系 r r r的某一个属性集 X X X r r r中没有 X X X上相等的两个元组存在,则 X X X Y Y Y恒成立。

完全函数依赖/部分函数依赖

R ( U ) R(U) R(U)中,若 X X X Y Y Y并且对于 X X X的任何真子集 X ′ X' X都有 X ′ X' X不函数决定 Y Y Y,则称 Y Y Y完全函数依赖于 X X X,否则称 Y Y Y部分函数依赖于 X X X

传递函数依赖

R ( U ) R(U) R(U)中,若 X X X Y Y Y Y Y Y Z Z Z Y Y Y X X X Z Z Z Y Y Y Z Z Z X X X Y Y Y不函数决定 X X X,则称 Z Z Z传递函数依赖于 X X X

候选键

K K K R ( U ) R(U) R(U)的属性或者属性组合,如果 K K K完全函数决定 U U U,则称 K K K R ( U ) R(U) R(U)上的候选键。

  • 可以任选一个候选键作为 R R R的主键。
  • 包含在任一候选键中的属性称为主属性,其它属性称为非主属性。

外来键

R ( U ) R(U) R(U)中的属性或属性组合 X X X并非 R R R的候选键,但是 X X X却是另一关系的候选键,则称 X X X R R R的外来键,简称外键。一个关系的外键是另一个关系的候选键。

参考

  • 哈尔滨工业大学 数据库系统 MOOC - 战德臣
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值