第9次作业-知识点整理:关于函数依赖定义、函数依赖类型

这个作业属于哪个课程 https://edu.cnblogs.com/campus/uzz/cs3
这个作业要求在哪里 https://edu.cnblogs.com/campus/uzz/cs3/homework/13106
这个作业的目标 <知识点整理:关于函数依赖定义、函数依赖类型>

1.函数依赖定义

设R(U)是属性集U上的关系模式,X和Y是U的子集。若对于R(U)的任意一个可能的关系r,对于X的每一个具体值,Y都有唯一的具体的值与之对应,则称X函数决定Y,或Y函数依赖于X,记作 X→Y。

通俗来讲,就是给定一个 X 都有唯一的 Y。可以理解为函数 y = f(x); 对于任意的 x 都有唯一的 y ,且 y 的取值由 x 决定。
例如:学生号—>学生姓名,学生年龄等等有关该学生的所有信息
反之,像学生姓名不能决定唯一的学生,因为存在同名的可能,这种情况就不能称作函数依赖。

2.函数依赖类型

(1)完全函数依赖:设R是一个具有属性集合U的关系模式,X和Y是U的子集。

*在函数依赖的基础上,我们的A属性是一个属性组,只有这个属性组中的全部属性才能确定唯一的B属性,A的任何一个子集都不可以。

如果X→Y,并且对于X的任何一个真子集Z,Z→Y都不成立,则称Y完全函数依赖于X,记作  $X\overset{f}{\rightarrow}Y$;

例:(学号,课程号)→ 成绩,学号 -\→ 成绩,课程号 -\→ 成绩,所以(学号,课程号)→ 成绩 是完全函数依赖。

(2)部分函数依赖:设R是一个具有属性集合U的关系模式,X和Y是U的子集。

*和完全函数依赖相比,A属性组中的部分属性就能确定B属性,其它属性可有可无。

如果X→Y,并且对于X的任何一个真子集Z,Z→Y都成立,则称Y部分函数依赖于X,记作 $X\overset{p}{\rightarrow}Y$。

例:学生表(学号,姓名,性别,班级,年龄)关系中,
(学号,姓名)→ 性别,学号 → 性别,所以(学号,姓名)→ 性别 是部分函数依赖。

(3)传递函数依赖:设R是一个具有属性集合U的关系模式,X、Y、Z是U的子集,且X、Y、Z是不同的属性集。

*如果A->B,B->C,并且B不能->A(防止直接A->C),那么我们可以得出结论A->C,叫做C传递函数依赖A。

如果X→Y,Y→X不成立,Y→Z,则称Z传递函数依赖于X,记作$X\overset{t}{\rightarrow}Z$。

例:关系S1(学号,系名,系主任),
学号 → 系名,系名 → 系主任,并且系名 -\→ 学号,系主任 -\→ 系名,所以学号 → 系主任为传递函数依赖。

总结

posted @   王歡樂樂樂樂樂樂le  阅读(46)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示