函数依赖有人懂"函数依赖","1NF,2NF,3NF,BCNF"啊?可以帮帮我吗?
有关系R和函数依赖F: R(A,B,C,D,E),F = { ABC→DE,BC→D,D→E }。
R中应该有F吧?如果R中存在F,如下解答(1)C和D是R中的主键R属于1NF,因为关系中存在部分依赖和传递依赖:A和F部分依赖于CD,B通过A传递依赖于C.(2)分解后的关系:D->FC->ACD->EA->B均满足3NF数据库问题:什么是非平凡函数依赖?
所谓函数依赖是指关系中一个或一组属性的值可以决定其它属性的值。
函数依赖正象一个函数y = f(x)一样x的值给定后,y的值也就唯一地确定了。
举几个例子,在学生表中(学号,姓名,年级),(学号,姓名)可以推出学号和姓名其中的任何一个,这就是平凡函数依赖.
通过(学号,姓名)可以推出这个学生所在的年级,这是非平凡函数依赖.((学号,姓名)就是一个x,学号或者姓名就是一个x')
通过属性学号就可以推出年级,说明年级完全依赖于学号,这就是完全函数依赖.
而(学号,姓名)虽然也可以推出年级,但是它的真子集姓名却推不出年级,这就是部分函数依赖,也叫不完全函数依赖.函数依赖的函数依赖的说明
1. 函数依赖不是指关系模式R的某个或某些关系实例满足的约束条件,而是指R的所有关系实例均要满足的约束条件。
2. 函数依赖是语义范畴的概念。
只能根据数据的语义来确定函数依赖。
例如“姓名→年龄”这个函数依赖只有在不允许有同名人的条件下成立
3. 数据库设计者可以对现实世界作强制的规定。
例如规定不允许同名人出现,函数依赖“姓名→年龄”成立。
所插入的元组必须满足规定的函数依赖,若发现有同名人存在, 则拒绝装入该元组。
属性之间有三种关系,但并不是每一种关系都存在函数依赖。
设R(U)是属性集U上的关系模式,X、Y是U的子集:
● 如果X和Y之间是1:1关系(一对一关系),如学校和校长之间就是1:1关系,则存在函数依赖X → Y和Y →X。
● 如果X和Y之间是1:n关系(一对多关系),如年龄和姓名之间就是1:n关系,则存在函数依赖Y → X。
●如果X和Y之间是m:n关系(多对多关系),如学生和课程之间就是m:n关系,则X和Y之间不存在函数依赖。
例: Student(Sno, Sname, Ssex, Sage, Sdept)
假设不允许重名,则有:
Sno → Ssex, Sno → Sage , Sno → Sdept,
Sno ←→ Sname, Sname → Ssex, Sname → Sage
Sname → Sdept
但Ssex -→ Sage
若 X → Y,并且 Y → X, 则记为 X ←→ Y。
若 Y 不函数依赖于 X, 则记为 X -→ Y。
在关系模式R(U)中,对于U的子集X和Y,
1.如果 X → Y,但 Y 不为 X 的子集,则称 X → Y 是非平凡的函数依赖
例:在关系SC(Sno, Cno, Grade)中,
非平凡函数依赖: (Sno, Cno) → Grade
2.若 X → Y,但 Y 为 X 的子集, 则称 X → Y 是平凡的函数依赖
平凡函数依赖: (Sno, Cno) → Sno ,(Sno, Cno) → Cno
3.若 x → y 并且,存在 x 的真子集 x1,使得 x1 → y, 则 y 部分依赖于 x。
例:学生表(学号,姓名,性别,班级,年龄)关系中,
部分函数依赖:(学号,姓名)→ 性别,学号 → 性别,所以(学号,姓名)→ 性别 是部分函数依赖
4.若 x → y 并且,对于 x 的任何一个真子集 x1,都不存在 x1 → y 则称y完全依赖于x。
例:成绩表(学号,课程号,成绩)关系中,
完全函数依赖:(学号,课程号)→ 成绩,学号 -→ 成绩,课程号 -→ 成绩,所以(学号,课程号)→ 成绩 是完全函数依赖
5.若x → y并且y → z,而y -→ x,则有x → z,称这种函数依赖为传递函数依赖。
例:关系S1(学号,系名,系主任),
学号 → 系名,系名 → 系主任,并且 系名 -→ 学号,所以 学号 → 系主任 为传递函数依赖数据库的题函数依赖A→B,BC→D,DE→A,写出R的候选码
因为A→B 所以根据定理有AC→BC 由于BC→D 则有AC→D 由于ACE→DE 这样ACE→A ACE→B ACE→C ACE→D ACE→E 都成立 ACE可以作为候选码
A不能做候选码的原因是A→C,D,E均不成立
AC不能做候选码的原因是 虽然AC→A,B,C,D都成立,但没有A→E
AE不能做候选码的原因是AE→C,D都不成立数据库中直接函数依赖和传递函数依赖的区别
一、函数依赖概念
函数依赖是从数学角度来定义的,在关系中用来刻画关系各属性之间相互制约而又相互依赖的情况。
函数依赖普遍存在于现实生活中,比如,描述一个学生的关系,可以有学号、姓名、所在系等多个属性,由于一个学号对应一个且仅一个学生,一个学生就读于一个确定的系,因而当“学号”属性的值确定之后,“姓名”及“所在系”的值也就唯一地确定了, 此时, 就可以称“姓名”和“所在系”函数依赖于“学号”,或者说“学号”函数决定“姓名”和“所在系”,记作:学号→姓名、学号→所在系。
下面对函数依赖给出确切的定义。
定义:设U{A1,A2,…,An}是属性集合,R(U)是U上的一个关系,x、y是U的子集。
若对于R(U)下的任何一个可能的关系, 均有x的一个值对应于y的唯一具体值,称y函数依赖于x,记作x→y。
其中x称为决定因素。
进而若再有y→x,则称x与y相互依赖,记作x←→y。
例如表1.2所示“系”关系中:如果系名值是唯一的,即各系名均不相同,那么有函数依赖集:
系代码→系名,系代码→系地址,系代码→系电话,系代码→系专业设置。
系名→系代码,系名→系地址,系名→系电话,系名→系专业设置。
可见,系名与系代码相互依赖,记作系名←→系代码。
函数依赖中还可细分为多种函数依赖,分别介绍如下:
二、部分函数依赖
设R(U)是属性集U上的关系,x、y是U的子集,x’是x的真子集,若x→y且x’→y,则称y部分依赖x,记作X→PY。
显然,当且仅当x为复合属性组时,才有可能出现部分函数依赖。
例如表1.6中, 显然有课程号→课程名,课程号→开课教研室代码。
从另一角度看,只要课程号一定,同时课程名确定,开课教研室也就唯一确定,因此课程号+课程名→开课教研室代码。
但它与前述课程号→开课教研室代码是不同的,因为{课程号,课程名}存在真子集:“课程号”,课程号→开课教研室代码,我们把课程号十课程名→开课教研室代码称为“开课教研室代码”部分函数依赖于课程号+课程名。
三、完全函数依赖
设R(U)是属性集U上的关系,x、y是U的子集,x’是x的真子集。
若对于R(U)的任何一个可能的关系,有x→y但x’→y,则称y完全函数依赖于x,记作X→FY。
所谓完全依赖是说明在依赖关系的决定项(即依赖关系的左项)中没有多余属性,有多余属性就是部分依赖。
例如设关系模式R,R=R(学号,姓名,班号,课程号,成绩),易知:
“(学号,班号,课程号)→成绩”是R的一个部分依赖关系。
因此有决定项的真子集(学号,课程号),使得“(学号,课程号)→成绩”成立,且“学号→成绩”或“课程号→成绩”成立,“(学号,课程号)→ 成绩”是R的一个完全依赖关系。
四、传递函数依赖
设R(U)是属性集U上的关系,x、y、z是U的子集,在R(U)中,若x→y,但y→x,若y→z,则x→z,称z传递函数依赖于x,记作X→TZ。
例如在一个学校中,每门课均是某一位老师教,但有些老师可教多门课,则有关系“教学”如表3.1所示。
由以上关系不难分析,课程名→职工号、职工号→课程名,但职工号和其他属性的函数关系中都是决定因素,即职工号→老师名、职工号→职称,在这种情况下,老师名、职称传递函数依赖于课程名。
表3.1 教学表
课程名
职工号
老师名
性别
出生日期
职称
英语
T1
张平
男
55.6.3
教授
数学
T2
王文
女
62.10.5
副教授
C语言
T3
李迎
女
62.10.5
副教授
数据库
T2
王文
女
62.10.5
副教授
下面进一步举例说明。
例如设车间考核职工完成生产定额关系为W:
W(日期,工号,姓名,工种,定额,超额,车间,车间主任)
请画出该关系中存在的所有类型的函数依赖。
解答:因每个职工每个月超额情况不同,而定额一般很少变动,因此为了识别不同职工以及同一职工不同月份超额情况,选定“日期”与“工号”两者组合作为主关键字。
为了直观醒目,可以在关系框架中的主关键字下方划一横线。
用箭头标出各属性的依赖情况,如图3.3所示:
图3.3 关系中各属性的依赖情况
图中表明:“超额”完全函数依赖于主关键字;“姓名”、“工种”和“车间”仅依赖于关键字中的“工号”;因“定额”依赖于“工种”,故“定额”传递函数依赖于“工号”;因“车间主任”函数依赖于“车间”,因而“车间主任”传递函数依赖于“工号”。
有人懂"函数依赖","1NF,2NF,3NF,BCNF"啊?可以帮帮我吗?
1.所谓函数依赖是指关系中一个或一组属性的值可以决定其它属性的值。
函数依赖正象一个函数 y = f(x) 一样,x的值给定后,y的值也就唯一地确定了。
如果属性集合Y中每个属性的值构成的集合唯一地决定了属性集合X中每个属性的值构成的集合,则属性集合X函数依赖于属性集合Y,计为:Y→X。
属性集合Y中的属性有时也称作函数依赖Y→X的决定因素(determinant)。
例:身份证号→姓名。
2.第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不
能有重复的属性。
3.2NF关系R属于第1范式,且R中每一个非主属性都完全函数依赖于R的任一候选码
4.3NF关系R的任何一个非主属性都不传递函数依赖于它的任何一个候选码,那么它是第三范式
不知道大家是否注意到sharktech的所有服务器的带宽价格全部跳楼跳水,降幅简直不忍直视了,还没有见过这么便宜的独立服务器。根据不同的机房,价格也是不一样的。大带宽、不限流量比较适合建站、数据备份、做下载、做流媒体、做CDN等多种业务。 官方网站:https://www.sharktech.net 付款方式:比特币、信用卡、PayPal、支付宝、西联汇款 以最贵的洛杉矶机器为例,配置表如...
v5.net一直做独立服务器这块儿的,自从推出云服务器(VPS)以来站长一直还没有关注过,在网友的提醒下弄了个6G内存、2核、100G SSD的美国云服务器来写测评,主机测评给大家趟雷,让你知道v5.net的美国云服务器效果怎么样。本次测评数据仅供参考,有兴趣的还是亲自测试吧! 官方网站:https://v5.net/cloud.html 从显示来看CPU是e5-2660(2.2GHz主频),...
Hosteons,一家海外主机商成立于2018年,在之前还没有介绍和接触这个主机商,今天是有在LEB上看到有官方发送的活动主要是针对LEB的用户提供的洛杉矶、达拉斯和纽约三个机房的方案,最低年付21美元,其特点主要在于可以从1G带宽升级至10G,而且是免费的,是不是很吸引人?本来这次活动是仅仅在LEB留言提交账单ID才可以,这个感觉有点麻烦。不过看到老龚同学有拿到识别优惠码,于是就一并来分享给有需...
函数依赖为你推荐
项目质量管理在项目质量管理中有什么硬盘分区格式化电脑硬盘怎么全部格式化并重新分区?修复网络lspLSP修复是什么意思?约束是什么意思约束,是什么意思。如有回答,请详细,网络连接受限制网络连接受限制怎么办!街旁appiOS平台上的App有哪些?请列举一下安全证从事安全管理工作需要哪些资格证书监控安装方法监控设备安装教程农业银行证书登陆不了已下载农行安装客户端软件及证书,但登陆个人网上银行时显示此类业务需要相关证书。模板价格建筑模板价格
域名服务器上存放着internet主机的 ipage vir 东莞电信局 高防dns locvps 美国主机代购 512au 网通服务器ip 网站cdn加速 泉州电信 php空间购买 网游服务器 流媒体加速 raid10 万网主机管理 免费的asp空间 万网注册 广州主机托管 双十二促销 更多