数据库函数依赖 |
您所在的位置:网站首页 › 苹果icloud官网进不去是为什么原因 › 数据库函数依赖 |
1、函数依赖:在一个表里面,属性X可以映射到属性Y,也就是说知道了X就能确定Y,称X为决定因素。
举栗子🌰:有一个关系模式S(Sno,Sname,Sage)
如果知道了一个学生的学号Sno,那我就能确定他的姓名Sname和年龄Sage。 当然,如果你强制规定学生姓名不能重复。那么,知道了一个学生的姓名也是可以确定其他属性的,这也是满足函数依赖关系的。 注:平凡函数依赖和非平凡函数依赖在这里不做解释 2、完全函数依赖和部分函数依赖 直接举栗子🌰:有一个关系模式S(Sno,Sname,Cno,Grade)完全函数依赖:如果我想知道某位学生的某一门课的成绩Grade,那我必须得同时知道他的学号Sno和课程号Cno。 但如果我只知道一部分信息,比如他的Sno或者Cno可以吗?答案是不行的!此时称Y[Grade]完全依赖于X[Sno,Cno]。 部分函数依赖:如果我想知道某位学生的姓名Sname,那我知道他的学号Sno就可以了。也就是说Y[Sname]只函数依赖于X[Sno,Cno]中的子集x[Sno],此时称Y部分函数依赖于X。 3、传递函数依赖 直接讲人话🌰:有一个关系模式S(Sno,Sdept,Mname)如果我知道了一个学生的学号Sno,那我就能知道他所在的系Sdept。(因为理论上一个学生只属于一个系) 如果我知道了某一个系Sdept,那么我就能知道这个系的系主任的姓名Mname。(一个系只有一个正的系主任,别杠,你赢了。) 也就是说,我知道了一个学生的学号Sno,其实我就知道了他所在系的系主任的姓名Mname。但这个过程中,他们是不存在直接函数依赖的,我需要通过系名称Sdept作为一个桥梁去把二者联系起来的。 -------------------------------------END------------------------------------ 学习完数据库的函数依赖,可以继续学习数据库码的概念 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |