第4章 关系规范化基础
DBS第四章

第四章 关系数据库的规范化设计 4.2 函数依赖
例1:设有关系模式R(A,B,C,D,E),其上的 函
数依赖集F={AB→CD, A→B, D→E}. 求证F必蕴涵A→E。
证明:∵A→B (已知) ∴A→AB (扩展律) ∵AB→CD (已知) ∴A→CD (传递律) ∴A→C,A→D (分解规则) ∵D→E (已知) ∴A→E (传递律)
X→Ai(i=1,2,…,n)中Ai的集合为X的属性闭包
记为
X
+ F
,即:
X
+ F
={Ai|AiU,且X→Ai在F+中}
第四章 关系数据库的规范化设计 4.2 函数依赖
定理4.4: 函数依赖X→Y能从F推出的充分必要条件是
YX+F ; (能用推理规则从F推出的所有X→Y的Y都在X +F中。
第四章 关系数据库的规范化设计 4.2 函数依赖
3
0003 C107
4
第四章 关系数据库的规范化设计 4.1 关系模式的设计问题
分析: (1)出现冗余和各种异常的原因
事物及事物的各个属性之间有一定的联系、约束 关系模式应尽量准确地反映这种内在的语义 不应把关系不密切或具有“排它”性的属性集中 (2)数据之间的联系→数据依赖→函数依赖(多对一)√
S#,
G
F={(S#, , C,#→T#} T#→TD C#
C#)→G
T#
T D
第四章 关系数据库的规范化设计
4.2 函数依赖
例2:设关系模式R(ABCD),在R的关系中,属性 值
间具有联系:
B→A
A值与B值有一对多联系; C值与D值有一对一联系;
数据库原理 第四章关系数据库理论期末习题与答案

1、设计性能较优的关系模式称为规范化,规范化主要的理论依据是()。
A.关系规范化理论B.关系运算理论C.关系代数理论D.数理逻辑正确答案:A2、下列关于规范化理论各项中正确的是()。
A.对于一个关系模式来说,规范化越深越好B.满足第二范式的关系模式一定满足第一范式C.第一范式要求---非主码属性完全函数依赖关键字D.规范化一般是通过分解各个关系模式实现的,但有时也有合并正确答案:B3、X→Y能从推理规则导出的充分必要条件是()。
A.B.C.D.正确答案:D4、两个函数依赖集F和G等价的充分必要条件是()。
A.B.C.D.5、设有关系模式R(A,B,C,D,E),函数依赖集F={A→B,B→C,C→D,D→A},ρ={AB,BC,AD}是R上的一个分解,那么分解ρ相对于F()。
A.既是无损连接分解,又是保持函数依赖的分解B.是无损连接分解,但不是保持函数依赖的分解C.不是无损连接分解,但是保持函数依赖的分解D.既不是无损连接分解,也不是保持函数依赖的分解正确答案:D6、关系模式中,满足2NF的模式()。
A.可能是1NFB.必定是1NFC.必定是3NFD.必定是BCNF正确答案:B7、不能使一个关系从第一范式转化为第二范式的条件是()。
A.每一个非主属性都完全函数依赖于主码B.每一个非主属性都部分函数依赖于主码C.关系中没有非主属性D.主码由一个属性构成正确答案:B二、判断题1、关系模式的分解是唯一的。
(错)2、一个关系模式属于BC范式,它一定属于第三范式。
(对)3、在关系模式R(U,F)中,如果X→Y,且存在X的真子集X1,使X1→Y,称函数依赖X→Y为完全函数依赖。
(错)4、函数依赖集F={A→B,B→C,C→A,C→B,A→C,BC→A},它的最小函数依赖集Fmin={A→B,B→C,A→C}。
(错)三、填空题1、被函数依赖集F逻辑蕴涵的函数依赖的全体构成的集合,称为。
正确答案:函数依赖集F的闭包2、设有关系模式R(A,B,C,D,M,N),函数依赖集F={N→D,M→D,D→B,BC→D,DC→N},R的候选码为。
第四章 关系的规范化

上面的规范化步骤可以在其中任何一步终止
4.5 规范化步骤 1NF2NF3NF…
①、把直接对码函数依赖的非主属性与决定它们的 码放在一个关系模式中。 ②、把造成传递函数依赖的决定因素连同被它们决 定的属性放在一个关系模式中。 ③、检查分解后的新模式,如果不是3NF,则继续 按照前面的方法进行分解,直至达到要求。 对于关系模式SD来说,系别直接依赖于主属性 学号,可将学号和系别放在一个关系模式中;系别 决定住址,系别是造成传递函数依赖的决定因素, 则将系别和住址放在另一个关系模式中;得到的分 解结果如下所示。 学生关系模式:S(学号,系别)。 系关系模式:D(系别,住址)。 关系S与D见表4-5和表4-6
对于关系模式SCD来说,成绩属性完全函数依赖
主属性学号和课程名,可将它们放在一个关系模 式中;属性住址和系别只依赖学号,可将它们放在 另一个关系模式中;则得到的分解结果如下所示。 学生和系关系模式:SD(学号,系别,住址)。 选课关系模式:SC(学号,课程名,成绩)。 关系SC与SD见表4-3和表4-4
消除不合适的数据依赖
的各关系模式达到某种程度的“分离”
采用“一事一地”的模式设计原则
让一个关系描述一个概念、一个实体或者实体 间的一种联系。若多于一个概念就把它“分离” 出去 所谓规范化实质上是概念的单一化
不能说规范化程度越高的关系模式就越好 在设计数据库模式结构时,必须对现实世界的实
这两个关系模式都不存在部分函数依赖,它 们都是第二范式。虽然消除了数据的插入异常, 但仍然存在其他存储问题,从关系模式SD包含了 学生和系两方面的信息来看,该模式仍然存在问 题,有待进一步分解,这就需要更高级别的范式。
4.3 第3范式(3NF)
第4篇关系数据库设计理论

注意:如果R的候选关键字均为单属性,或R的全体 属性均为主属性,则R∈2NF。
4.2.6 第三范式
1.第三范式的定义 定义4.8 如果关系模式R∈2NF,R(U,F)中所有
非主属性对任何候选关键字都不存在传递函数依赖, 则称R是属于第三范式(Third Normal Form),简称 3NF,记作R∈3NF。 第三范式具有如下性质: (1)如果R∈3NF,则R也是2NF。 (2)如果R∈2NF,则R不一定是3NF。
4.2.1 函数依赖
(2)扩张性 若 X→Y 且 W→Z , 则 ( X , W ) → ( Y , Z ) 。 例 如 ,
SNO→(SN,AGE),DEPT→MN,则有(SNO,DEPT)→ (SN,AGE,MN)。
说明:扩张性实现了两函数依赖决定因素与被决定 因素的分别合并作用。
(3) 合并性 若X→Y且X→Z则必有X→(Y,Z)。例如,在关系 SDC 中 , SNO→ ( SN , AGE ) , SNO→DEPT , 则 有 SNO→ (SN,AGE,DEPT)。 说明:决定因素相同的两函数依赖被决定因素的可 以合并。
4.2.2 码
已知关系模式R(U,F),如何来找出R的所有候 选键呢?方法的步骤为: 1、查看函数依赖集F中的每个形如Xi→Yi的(i=1,……,n) 函数依赖关系。看哪些属性在所有Yi(i=1,……,n) 中 没 有 出 现 过 , 设 没 出 现 过 的 属 性 集 为 P ( P=U-Y1Y2……-Yn ) 。 则 当 P=φ ( 表 示 空 集 ) 时 , 转 4 ; 当 P≠φ时,转2。
北京电大数据库基础网考典型题

第1章数据库系统概论一、单选题1.数据库管理系统(DBMS是(C )C. 一组软件2.在数据库中存储的是(D )D.数据及数据之间的联系3.若一个关系为R(学生号,姓名,性别,年龄),则哪个属性适合作为该关系的主码?(A)A.学生号4.在数据库的三级模式结构中,模式有(A )A. 1个5.数据库系统的核心是(A )。
A.数据库管理系统6.数据库系统与文件系统的主要区别是(D )。
D.文件系统没有解决数据冗余和数据独立性问题,而数据库系统解决了这些问题7.关系数据库系统中所使用的数据结构是(B ) B.二维表8.关系模型中,一个关键字是(B )。
B.可由一个或多个其值能唯一标识该关系模式中任何元组的属性组成9.如果一个班只能有一个班长,而且一个班长不能同时担任其他班的班长,班级和班长两个实体之间的关系属于(A )。
A. —对一联系二、判断题1.在对象数据模型中,对象不但能够继承,而且能够嵌套。
(V )2.在文件管理阶段,文件之间是相互联系的,在数据库管理阶段,文件之间是相互独立的。
(X )3.分布式数据库系统既支持客户的局部应用,又支持客户的全局应用。
(V )4.主码是一种候选码码,主码中的属性个数没有限制。
(V )5.在文件系统中,不容易做到数据共享,而在数据库系统中,容易做到数据共享。
(V )6.若一个联系涉及到两个实体则称为二元联系,若只涉及到一个实体则称为一元联系。
(V )7.在存取数据库的数据的过程中,使用了两个数据缓冲区,分别为系统缓冲区和用户缓冲区。
(V )8.若实体A和B是1对多的联系,实体B和C是1对1的联系,则实体A和C是1对1的联系。
(X )9.数据库系统中四类用户分别为数据库管理员、数据库设计员、应用程序员和终端用户(V )第2章关系运算一、单选题1.域是实体中相应属性的(A )A.取值范围2.把保存关系定义的关系称为对应数据库的( B )B.兀关系3.在下面所给的属性中,哪个属性适宜作为主关键字?( D )D.身份证号码4.设关系R和S的元组个数分别为10和30,关系T是R与S的笛卡尔积则T的元组个数是(C )C.3005.设D,D2和D3域的基数分别为2,3和4,贝U DXDXD的元组数为(B )B. 246.设一个关系A具有a1个属性和a2个元组,关系B具有b1个属性和b2个元组,则关系A B具有的元组个数为(B )B. a2 b27.设一个集合A={3,4,5,6,7},集合B={1,3,5,7,9},则A减B的差集中包含有个元素。
数据库课件第4章关系数据库(RDB)规范化设计理论

3. 完全函数依赖与部分函数依赖
完全函数依赖: 在关系模式R(U)中,如果X→Y,并且对于X的任何一 个真子集X′,都有X′ Y,则称Y完全函数依赖于X, 记作X f Y。 部分函数依赖: 若X→Y,但Y不完全函数依赖于X,则称Y部分函数依 p Y。 赖于X,记作X
例8: 学生(学号,姓名,所在系,系主任姓名,课程号,成绩) 学生关系模式存在的部分函数依赖: p (学号,课程号) 姓名 p 所在系 (学号,课程号) p (学号,课程号) 系主任姓名
教师姓 名
李林 78号
住址
课程号
C1
课程名
N1
李林
李林 汪佳 吴仪
78号
78号 59号 79号
C2
C3 C4 C5
N2
N3 N4 N5
师帆
76号
C6
N6
⑷当执行数据插入时,DB中的数据不能产生插入 异常现象 所谓“插入异常”是指希望插入的信息由于不 能满足数据完整性的某种要求而不能正常地被 插入到DB中的异常问题。 比如:上例中插入一个尚未安排授课的新进教师 信息. 原因: 因多种信息混合放在一个表中,可能造成因一 种信息被捆绑在其他信息上而产生的信息之间 相互依附存储的问题,使得信息不能独立插入。
第4章
关系数据库(RDB)规范化理论
4.1 关系模式规范化的必要性 4.2 数值依赖 4.3 范式与规范化 、关系分解原则
RDB规范化理论的目的是要设计“好的”RDB模式。要设计 好的关系模式,必须是关系满足一定的约束条件,此约束 形成了规范。 范式(Normal Form):衡量DB规范的层次或深度,DB规范化 层次由范式来决定。简记作NF. 根据关系模式满足的不同性质和规范化的程度,将关系模 式分为第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、 BC范式、第四范式(4NF)、第五范式(5NF),范式越高规范 化程度越高。 规范化:低级关系模式通过模式分解转换为若干高级范式 的关系模式集合的过程。 规范化是在RDB中减少数据冗余的过程。
关系数据库规范化理论

第4章关系数据库规范化理论数据库设计的一个最基本的问题是怎样建立一个合理的数据库模式,使数据库系统无论是在数据存储方面,还是在数据操作方面都具有较好的性能。
什么样的模型是合理的模型,什么样的模型是不合理的模型,应该通过什么标准去鉴别和采取什么方法来改进,这是在进行数据库设计之前必须明确的问题。
为使数据库设计合理可靠、简单实用,长期以来,形成了关系数据库设计理论,即规范化理论。
它是根据现实世界存在的数据依赖而进行的关系模式的规范化处理,从而得到一个合理的数据库设计效果。
本章首先说明关系规范化的作用,接着引入函数依赖和范式等基本概念,然后介绍关系模式等价性判定和模式分解的方法,最后简要介绍两种数据依赖的概念。
4.1 关系规范化的作用4.1.1问题的提出从前面的有关章节可知,关系是一张二维表,它是涉及属性的笛卡尔积的一个子集。
从笛卡尔积中选取哪些元组构成该关系,通常是由现实世界赋予该关系的元组语义来确定的。
元组语义实质上是一个n目谓词(n是属性集中属性的个数)。
使该n目谓词为真的笛卡尔积中的元素(或者说凡符合元组语义的元素)的全体就构成了该关系。
但由上述关系所组成的数据库还存在某些问题。
为了说明的方便,我们先看一个实例。
【例4.1】设有一个关于教学管理的关系模式R(U),其中U由属性Sno、Sname、Ssex、Dname、Cname、Tname、Grade组成的属性集合,其中Sno的含义为学生学号,Sname为学生姓名,Ssex为学生性别,Dname为学生所在系别,Cname为学生所选的课程名称,Tname 为任课教师姓名,Grade为学生选修该门课程的成绩。
若将这些信息设计成一个关系,则关系模式为:教学(Sno,Sname,Ssex,Dname,Cname,Tname,Grade)选定此关系的主键为(Sno,Cname)。
由该关系的部分数据(如表4-1所示),我们不难看出,该关系存在着如下问题:1. 数据冗余(Data Redundancy)●每一个系名对该系的学生人数乘以每个学生选修的课程门数重复存储。
《数据库基础与应用》课程标准

《数据库基础与应用》课程标准适用专业:计算机应用层次: ________________ 史专________________ 授课形式:____________ 全日制 ________________ 课程性质:专业必修课学时数: ________________ 64 ______________《数据库基础与应用》课程标准一、适用对象适用于全日制中专计算机应用专业学生二、课程性质与定位《数据库基础与应用》课程是计算机应用专业的一门专业必修课。
数据库系统已成为计算机科学教育中必不可少的部分,因而,牢固地掌握数据库系统知识已成为我们日常学习的核心内容。
信息时代的计算机应用人才,应当熟练掌握计算机科学技术中的数据库技术,并能够根据实际需求应用数据库系统进行数据信息管理。
数据库是数据管理的最新技术,是计算机学科的重要组成部分。
数据库技术发展迅速,其应用早已超出计算机专业的范畴,各专业领域的人们都在学习和使用数据库。
根据数据库的发展情况,本书摒弃了以往教材中不可缺少的网状数据库和层次数据库两大内容,以关系型数据库管理系统作为实例。
三、课程教学目标通过本课程的理论学习和上机实验,使学生了解现在数据库的流行趋势和先进的知识;初步掌握数据库管理系统的基本原理,数据库的基本设计方法;掌握一种流行数据库系统的基本操作方法和编程技术;重点培养学生数据库应用系统软件开发的技术和能力。
四、本课程学时安排五、课程教学内容和基本要求(按章节详细阐述)第一章:数据库概述(一)教学重点和难点1.教学重点:数据库和数据模型的基本概念数据模型的三要素概念模型的表示方法数据库技术的发展过程与研究领域数据库系统的模式结构与体系结构DBMS的功能与组成2.教学难点:数据库和数据模型的有关概念、数据库技术的发展与研究领域以及数据库系统的结构。
(二)教学内容和基本要求1.教学内容:1.1引言1.1.1数据、数据库、数据库系统和数据库管理系统的基本概念1.1.2数据管理的进展1.1.3数据库技术的研究领域1.2数据模型1.2.1数据模型的三要素1.2.2概念模型1.2.3三种主要的数据模型1.3数据库系统的结构1.3.1数据库系统的模式结构1.3.2数据库系统的体系结构1.3.3数据库管理系统2.教学目的及要求:本章主要讲述了数据库的有关概念,通过本章的学习,读者应该理解数据库的基本概念、数据库的三级模式结构和二级映像功能;知道数据模型的三要素,会画E-R图。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
返回
18
4.2 关系规范化
关系数据库中的关系必须满足一定的规范化要求,对于 不同的规范化程度可用范式来衡量。 范式(Normal Form)是符合某一种级别的关系模式的 集合 第一范式(1NF)
第二范式(2NF) 第三范式(3NF) BC范式(BCNF) 第四范式(4NF) 第五范式(5NF)
返回
23
第一范式(1NF)
例如:学生选课情况表如下表所示: 学生选课表
姓名
张三 王五 张三 张三 张三 王五 王五
姓名
课程 课程 高数 离散数学 高数 普物 英语 普物
离散数学 程序 英语 设计
学期 学期 1 2 1 1
程序设计
1 2 2
24
返回
第二范式(2NF)
如果关系模式R是第一范式,且每个非主属性都 完全依赖于码 ,则称R为满足第二范式的模式, 记为:R∈2NF模式。
如果属性X与Y有m:1的联系时,则只存在函数依赖 X→Y。
例如,SNO与AGE,DEPT之间均为m:1联系,所以有 SNO→AGE ,SNO→DEPT;
如果属性X与Y有m:n的联系时,则X与Y之间不存在任 何函数依赖关系。
返回
9
4.1.2几种特定的函数依赖
1、非平凡函数依赖和平凡函数依赖 设关系模式R(U), X、 Y⊆ U: 如果X→Y, 且Y ⊆ X(子集), 则称X→Y 为平凡的函数依赖。 如果X→Y, 且Y不是X的子集, 则称X→Y为 非平凡的函数依赖。
11
4.1.2几种特定的函数依赖
3、传递函数依赖
设关系模式R(U), X ⊆ U, Y ⊆ U, Z ⊆ U。 如果X→Y, Y→Z成立, 但Y→X不成立, 且 Z-X、 Z-Y和Y-X均不空, 则称X→Z为传递函 数依赖。 例如: 关系模式R={A, B, C, D}, 其上的函数 依赖集F={A→B, B→C, A→C, AB→D}, 则 A→C为传递函数依赖。
返回
2
提 问
什么是选择、投影运算? 什么是并、交、差运算? 连接运算分几种?
等值连接与自然连接区别?
返回
3
自然连接一定是等值连接,但等值连接
不一定是自然连接,因为自然连接要求
相等的分量必须是公共属性,而等值连
接要求相等的分量不一定是公共属性
等值连接不把重复属性去掉,而自然连
接要把重复属性去掉
包含在任何候选关键字中的各个属性称为主属性
不包含在任何候选码中的属性称为非主属性
R(学号#,姓名,出生日期,成绩)存在下列 函数依赖关系:
学号→姓名 学号→性别 学号→出生日期 学号→成绩
每个非主属性都完全依赖于码 ,所以该关系R∈2NF
返回
25
第二范式(2NF)
主关键字是属性的组合,这样的关系模式可能 不是第二范式。 关系S(学号,姓名,性别,课程,学分),存 在下列函数依赖关系:
学号→姓名,学号→性别 ,学号→课程, (课程、 学号)→学分 非主属性部分依赖于码 ,故关系S不属于2NF。对上 述关系模式进行分解,分解为两个关系: S1(学号,姓名,性别);S2(学号,课程,学分) S1∈2NF;S2∈2NF
返回
26
关系的分解
(1)如果R不满足1NF条件,先对其分解,使
返回
29
第三范式(3NF)
推论1: 如果关系模式R∈1NF,且它的每一个 非主属性既不部分依赖、 也不传递依赖于码 , 则R∈3NF。 推论2: 不存在非主属性的关系模式一定为 3NF。
返回
30
BC范式(BCNF)
关系模式R∈1NF,对任何非平凡的函数依赖 X→Y,X均包含码,则R∈BCNF。
④删除异常(不该删除的数据不得不删)
例,如果某个系的学生全部毕业了, 我们在删除该系学生信 息的同时,把这个系及其系主任的信息也丢掉了。
返回
16
4.2 关系规范化
“好”的模式:不会发生插入异常、删除异常、 更新异常,数据冗余应尽可能少。 原因:由存在于模式中的某些数据依赖引起的 解决方法:通过分解关系模式来消除其中不合 适的数据依赖。 关系模式规范化的目的
通常实际情况下,规范化到3NF就可以了。
返回
21
4.2.2 常用的三种范式
1、第一范式(1NF) 定义:设R是一个关系模式。 如果R的每个属性 的值域都是不可分的简单数据项(即是原子) 的集合, 则称这个关系模式属于第一范式, 简 记作R∈1NF。 1NF是规范化最低的范式,它要求无重复记录; 字段不可分解。 在任何一个关系数据库系统中, 关系至少应该 是第一范式。 不满足第一范式的数据库模式不 能称为关系数据库。 第一范式不能排除数据冗余和异常情况的发生。
如果关系模式R∈BCNF,由定义可知,R中不存在任 何属性传递函数依赖于或部分依赖于任何候选码,所 以必定有R∈3NF。但是,如果R∈3NF,R未必属于 BCNF。 3NF和BCNF是以函数依赖为基础的关系模式规范化程 度的测度。 如果一个关系数据库中的所有关系模式都属于BCNF, 那么在函数依赖范畴内,它已实现了模式的彻底分解, 达到了最高的规范化程度,消除了插入异常和删除异 常。
28
第三范式(3NF)
如果关系模式R是第二范式,且没有一个非主 属性是传递函数依赖于码 ,则称R为满足第三 范式的模式,记为:R∈3NF模式。
关系ST(学号,楼号,收费);其中包含的函 数依赖关系有: 学号→楼号 楼号→收费 则:学号→收费 对上述关系模式进行分解,分解为两个关系: st1(学号,楼号); st2(楼号,收费)
BCNF是从1NF直接定义而成的,可以证明, 如果R∈BCNF,则R∈3NF。 BCNF的关系模式都具有如下3个性质。
(1)所有非主属性都完全函数依赖于每个候选码。
(2)所有主属性都完全函数依赖于每个不包含它的 候选码。
(3)没有任何属性完全函数依赖于非码的任何一组 属性。
返回
31
BC范式(BCNF)
返回
22
第一范式(1NF)
例如:下表描述的是职工情况。 职工情况表
工资
职工号 姓名 职工号 姓名 20017 20017 李岚 李岚
基本工资 职务工资 工龄工资
890 890
900 900
基本工资
职务工资 300 300
300 300
工龄工资 30 30
40 40
20013 王晓江 20013 王晓江
返回
20
各种范式之间存在联系: 1NF⊃2NF⊃3NF⊃BCNF ⊃4NF⊃5NF 通常把某一关系模式R为第n范式简记为 R∈nNF。
在这些范式中,最重要的是3NF和BCNF,它 们是进行规范化的主要目标
一个低一级范式的关系模式,通过模式分解可 以转换为若干个高一级范式的关系模式的集合, 这个过程称为规范化。
学号→姓名 计算机 女 学号→专业名 韦严平 计算机 男 学号→性别 李方方 计算机 男 学号→总学分
返回
学生情况(学号#,姓名,性别,出生时间,总学分)
8
4.1.1 函数依赖
2. 函数依赖与属性间的联系类型的关系
关系模式中,如果属性X与Y有1:1联系时,则存在函 数依赖X ↔ Y。
例如,当学生没有重名时,SNO ↔ SN;
返回
12
4.1.3 码的函数依赖表示
设K为关系模式R(U)中的属性或属性集合。 若K→U,则K称为R的一个候选码 (Candidate Key)。 若关系模式R有多个候选码,则选定其中一个 作为主码(Primary Key)。
关系模式R中属性或属性组X并非R的码,但X 是另一个关系模式的码,则称X是R的外部码 (Foreign Key),也称为外码。
例:在学生课程(学生号,课程号,成绩)关 系中,若存在函数依赖为: (学生号,课程号) →成绩;(学生号,课程号)→ 课程号;
返回
10
4.1.2几种特定的函数依赖
2、 完全函数依赖和部分函数依赖
设关系模式R(U), X, Y⊆U: 如果X→Y, 并且对于X的任何一个真子集Z, Z→Y 都不成立, 则称Y完全函数依赖于X。 若X→Y, 但对于X的某一个真子集Z, 有Z→Y成立, 则称Y部分函数依赖于X。 例: 在关系SC(Sno, Cno, Grade)中,Sno, Cno是主码 由于:Sno →Grade不成立,Cno → Grade也不成立 因此:Grade 完全函数依赖于(Sno, Cno) ; 返回
简单表述:如果知道X的值,就可以获得Y的值 R的一切关系都要满足定义中的限定
返回
7
例4-1
学 号 001101 001102 001103 001104 001106 姓 名 王林 程明 王燕
学生情况表
专业名 计算机 计算机 性别 男 男 出生时间 1980-02-10 1981-02-01 1979-10-06 1980-08-26 1980-11-20 总学分 50 50 50 50 50
返回
15
4.2 关系规范化
关系模式学生信息表中存在的问题 ①数据冗余(太大浪费大量的存储空间)。
例:每一个系主任的姓名重复出现
②更新异常(数据冗余 ,更新数据时,维护数据完整性代 价大)
例:某系更换系主任后,系统必须修改与该系学生有关的每 一个元组
③插入异常(该插的数据插不进去)
例,如果一个系刚成立,尚无学生,我们就无法把这个系及 其系主任的信息存入数据库。
第4章
关系规范化基础
返回
1
1. 2. 3. 4. 5. 6.
S(学号S#,姓名SN,所在系SD,年龄SA) C(课程号C#,课程名CN,先修课号PC#) SC(S#,C#,成绩G) 检索学生的所有情况 检索年龄大于等20岁的学生姓名 检索先修课号为C2的课程号 检索课程号C1的成绩为A的所有学生姓名 检索S1修读的所有课程名及先修课号 检索年龄为23的学生所修课程名