函数依赖关系的例子_部分函数依赖
完全函数依赖、部分函数依赖和传递函数依赖举例
完全函数依赖、部分函数依赖和传递函数依赖举例
1. 完全依赖:
通过{学生学号, 选修课程名}可以得到{该生本门选修课程的成绩},而通过单独的{学生学号}或者单独的{选修课程名}都无法得到该成绩,则说明{该生本门选修课程的成绩}完全依赖于{学生学号,选修课程名}
2. 部分函数依赖:
通过{学生学号,课程号}可以得到{该生姓名},而通过单独的{学生学号}已经能够得到{该生姓名},则说明{该生姓名}部分依赖于{学生学号,课程号}; 又比如, 通过{学生学号,课程号}可以得到{课程名称},而通过单独的{课程号}已经能够得到{课程名称},则说明{课程名称}部分依赖于{学生学号,课程号}。(部分依赖会造成数据冗余及各种异常。)
3.传递函数依赖:
在关系R(学号,宿舍,费用)中,通过{学号}可以得到{宿舍},通过{宿舍}可以得到{费用},而反之都不成立,则存在传递依赖{学号}->{费用}。(传递依赖也会造成数据冗余及各种异常。)
4.平凡函数依赖
定义: 若X->Y,且Y是X的子集(对任一关系模式,平凡函数依赖必然成立),就是平凡函数依赖。
例如: 在学生表(学号,姓名,年级)中,(学号,姓名)可以推出学号和姓名其中的任何一个,这就是平凡函数依赖. 直白点说,就是只要Y是X的子集,Y就依赖于X。
5.非平凡函数依赖
定义: 若X->Y,但Y不是X的子集,就是非平凡函数依赖。
例如: 在学生表(学号,姓名,年级)中,通过(学号,姓名)可以推出这个学生所在的年级,但年级不是(学号,姓名)的子集,这是非平凡函数依赖.((学号,姓名)就是一个x,年级就是一个y’)。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/234847.html原文链接:https://javaforall.cn
相关文章
- python部分依赖踩坑
- 你还不知道vue3中依赖收集和派发更新的实现逻辑吗?那你就out啦~还不快来看!
- 函数依赖及范式理论
- R语言有极值(EVT)依赖结构的马尔可夫链(MC)对洪水极值分析|附代码数据
- 解密openGauss数据库中的函数依赖关系
- 如何管理云原生应用程序的依赖关系
- 【IOC 控制反转】Android 布局依赖注入 ( 布局依赖注入步骤 | 布局依赖注入代码示例 )
- 【Android Gradle 插件】Android 依赖管理 ① ( 依赖库匹配 | 依赖库查找顺序及路径 | Gradle 资源库 )
- SQL开发知识:maven如何添加oracle依赖及失败问题处理
- SQLServer 错误 2020 为实体“%.*ls”报告的依赖关系不包含对列的引用。 这是由于此实体引用的对象不存在,或由于此实体中的一个或多个语句有错误。 在重新运行该查询之前,请确保该实体中没有错误并且该实体引用的所有对象都存在。 故障 处理 修复 支持远程
- Go语言go mod包依赖管理工具使用详解
- Go语言依赖管理
- 解决Linux依赖检测失败问题(linux依赖检测失败)
- 如何查找Oracle表的依赖关系?(oracle查询表依赖)
- 借助Lead函数改良Oracle依赖(lead函数oracle)
- 靠GCC实现Redis的顺利运行(redis运行依赖gcc)