数据库规范化理论习题
数据库原理第06章练习题

数据库系统原理练习题 第6章 一、选择题 1. 关系数据库规范化是为了解决关系数据库中( )的问题而引入的。 A.提高查询速度 B.插入、删除、更新异常和数据冗余 C.保证数据的安全性和完整性 D.恢复数据库 2. 关系模式中每个分量都是不可分的数据项,则关系模式属于( ) A. 1NF B. 2NF C. 3N D. BCNF
3. 若R∈2NF,则R的每个( ) A.非主属性部分依赖于码 B.非主属性完全依赖于码 C.主属性部分依赖于码 D.主属性完全依赖于码 4. 消除了非主属性对码传递函数依赖的2NF的关系模式,必定属于( ) A.1NF B.2NF C. 3NF D. BCNF
5. 关系模式中,满足2NF的模式( ) A.可能是1NF B.必定是1NF C.必定是3N D.必定是BCNF
二、关系模式规范化 1. 设有关系模式: 选修(姓名,专业,课程,任课教师,成绩) 假设:每个学生在一个专业学习;每门课程有一个任课教师;每个学生选修的每门课程只有一个成绩;姓名、课程无重名。 (1)请写出选修关系中存在的基本函数依赖集。 (2)找出关系模式的候选码,指出哪些是主属性?那些是非主属性。 (3)分析关系模式最高属于第几范式?为什么? (4)如果选修关系不属于3NF,请将其分解为第3NF模式集。 2. 现有一个描述学生、课程以及选课信息的关系模式: SelectCourse(学号,姓名,年龄,课程名称,成绩,学分)。 其中:每个学生可选多门课程,每门课程只选一次;每个学生选修的每门课程有一个成绩; 每门课程都规定一定的学分。 (1)请写出SelectCourse关系中存在的基本函数依赖集。
(2)找出关系模式的候选码。 (3)分析关系模式最高属于第几范式?为什么? (4)请将SelectCourse关系模式分解为第3NF模式集。 3. 假设某商业集团数据库中有一关系模式R如下: R(商店编号,商品编号,数量,部门编号,负责人)。 如果规定: (1)每个商店的每种商品只在一个部门销售。 (2)每个商店的每个部门只有一个负责人。 (3)每个商店的每种商品只有一个库存量。 请回答下列问题: (1)写出R关系中存在的基本函数依赖集。
数据库原理 第四章关系数据库理论期末习题与答案

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的候选码为。
数据库习题答案

《数据库习题答案》来自五星文库点这里,有很多篇《数据库习题答案》在线阅读本文:数据库习题答案导读:第三章习题,1.关系数据库设计理论,数据依赖范式和关系模式的规范化设计方法,其中数据依赖起着核心的作用,2.关系数据库中的关系模式至少要满足第一范式,如果每个属性值都是不可再分的最小数据单位,(2)试分析模式R的数据冗余问题,关系R中的C属性会存在在数据冗余,相应地原来存储在一张二维表内的数据就要分散存储到多张二维表中,第四章习题,A删除基本表B修改基本表中的数据,A数据项B 元组,C表D数据库第三章习题一、单项选择题1.在关系模型R中,函数依赖X→Y的语义是( B )A.在R的某一关系中,若两个元组的X值相等,则Y值也相等B.在R的每一关系中,若两个元组的X值相等,则Y值也相等C.在R的某一关系中,X值应与Y值相等D.在R的每一关系中,X值应与Y值相等2.设学生关系模式为:学生(学号,姓名,年龄,性别,成绩,专业),则该关系模式的主键是( B )A.性别 B.学号C.学号,姓名 D.学号,姓名,性别3.如果X→Y(Y不包含于X,且Y不能决定X)和Y→Z成立,那么X→Z成立。
这条规则称为( B )A.自反律 B.传递律C.伪传递律 D.增广律4.关系模式R?2NF,则R一定是(b )A.1NF B.3NF5.设一关系模式为:运货路径(顾客姓名,顾客地址,商品名,供应商姓名,供应商地址),则该关系模式的主键是( C )A.顾客姓名,供应商姓名,供应商地址 B.顾客姓名,商品名C.顾客姓名,供应商姓名,商品名 D.顾客姓名,顾客地址6.下列有关范式的叙述中正确的是( B )A.如果关系模式R?1NF,且R中主属性完全函数依赖于主键,则R是2NFB.如果关系模式 R?3NF,则R?2NF一定成立C.如果关系模式R?1NF,则只要消除了R中非主属性对主键的传递依赖,则R可转换成2NFD.如果关系模式R?1NF,则只要消除了R中非主属性对主键的部分依赖,则R可转换成3NF7.关系模式学生(学号,课程号,名次),若每一名学生每门课程有一定的名次,每门课程每一名次只有一名学生,则以下叙述中错误的是( B )A.(学号,课程号)和(课程号,名次)都可以作为候选键B.只有(学号,课程号)能作为候选键C.该关系模式属于第三范式D.该关系模式属于BCNF8.已知关系模式R(ABCD),F={A→C,B→C,C→D },则以下成立的是( B )A.A→B B.A→DC.AD→BC D.AC→BD9.如果X→Y且Z?U成立,那么XZ→YZ成立,这条规则称为( D )A.自反律 B.传递律`C.伪传递律 D.增广律10.能够消除多值依赖引起的冗余是( D )A.1NF B.2NF二、填空题1.关系数据库设计理论,数据依赖范式和关系模式的规范化设计方法。
第7章 关系数据库规范化理论

7.2.1 关系模式中的码
例:
关系模式S(Sno,Sdept,Sage),单个属性Sno是码
SC(Sno,Cno,Grade)中,(Sno,Cno)是码 关系模式R(P,W,A)
P:演奏者
W:作品
A:听众
一个演奏者可以演奏多个作品 某一作品可被多个演奏者演奏 听众可以欣赏不同演奏者的不同作品 码为(P,W,A),即All-Key
Sno→SName
Sno→Sdept
Sno→Sage
例:SC(Sno, Cno, Grade)
(Sno, Cno)→Grade
8
7.1.2 一些术语和符号
平凡函数依赖与非平凡函数依赖
在关系模式R(U)中,对于U的子集X和Y,
如果X→Y,但Y X,则称X→Y是非平凡的函数依赖
若X→Y,但Y X,
则称X→Y是平凡的函数依赖
例:在关系SC(Sno, Cno, Grade)中,
非平凡函数依赖: (Sno, Cno) → Grade 平凡函数依赖: (Sno, Cno) → Sno
(Sno, Cno) → Cno
如不作特别说明,总是讨论非平凡函数依赖。
9
7.1.2 一些术语和符号
若X→Y,则X称为这个函数依赖的决定属性
24
7.2.1 关系模式中的码
外部码:用于关系表之间建立关联的属性(组)。 关系模式 R 中属性或属性组X 并非 R的码,但 X
是另一个关系模式的码,则称 X 是R 的外部码,也 称外码。
如在SC(Sno,Cno,Grade)中,Sno不是码,
但Sno是关系模式S(Sno,Sdept,Sage)的码, 则Sno是关系模式SC的外部码
关系数据库的规范化理论与数据库设计

.
13
几个术语和符号
如果 X→Y,则 X 叫做决定因素(Determinant) 如果 X→Y , Y → X ,则记作: X ←→ Y
如果Y不函数依赖于X,则记作: X→Y
.
14
二、平凡函数依赖与非平凡函数依赖 如果 X→Y,但 Y X,则称 X→Y 是非平凡的函数 依赖
关系模式的规范化:解决插入、删除和更 新异常,尽量消除数据冗余,消除不合适 的数据依赖
这就要求关系模式应该满足一定的条件
关系模式满足不同的条件,称为不同的范 式
.
30
1NF范式
如果关系模式R的所有属性都是不可再分解 的,则称R属于第一范式,简称1NF,记做 R∈1NF。
满足1NF的关系为规范化的关系,否则为非规 范化的关系
U,则【1】为F所逻辑蕴含
XZ->ZY 2008.09 3、下列关于部分函数依赖的叙述中,哪条是正确的? A、若X->Y,且存在Y的真子集Y’,X->Y’,则Y对X部分函数依赖 B、若X->Y,且存在Y的真子集Y’,X->Y’,则Y对X部分函数依赖 C、若X->Y,且存在X的真子集X’,X’->Y,则Y对X部分函数依赖 D、若X->Y,且存在X的真子集X’,X’->Y,则Y对X部分函数依赖
CNAME 机械设计 高等数学 管道工程 数据结构
.
6
该关系模式可能出现如下 问题:
异常(多个记录更新,刘宏
容易产生数据不一致) 王明
插入异常:TNAME,CNO码, 李红
某个教师没上课,CNO为
空,不能插入)
ADDRESS CNO 18栋302 043
21栋503 056 18栋302 041 17栋503 002
1.规范化理论是关系数据库进行逻辑设计的理论依据,根据这个理论,...

1.规范化理论是关系数据库进行逻辑设计的理论依据,根据这个理论,关系数据库中的关系必须满足:每一个属性都是()。
A.长度不变的B.不可分解的C.互相关联的D.互不相关的2.已知关系模式R(A,B,C,D,E)及其上的函数依赖集合F={A→D,B →C ,E→A },该关系模式的候选码是()。
A.ABB.BEC.CDD.DE3.关系模式中,满足2NF的模式()。
A.可能是1NFB.必定是1NFC.必定是3NFD.必定是BCNF4.消除了部分函数依赖的1NF的关系模式,必定是()。
A.1NFB.2NFC.3NFD.BCNF5.关系模式的候选码可以有1个或多个,而主码有()。
A.多个B.0个C.1个D.1个或多个6.候选码的属性可以有()。
A.多个B.0个C.1个D.1个或多个7.关系数据库规范化是为了解决关系数据库中()的问题而引入的。
A.提高查询速度B.插入、删除异常和数据冗余C.保证数据的安全性和完整性D.8.学生表(id,name,sex,age,depart_id,depart_name),存在的函数依赖是id→{name,sex,age,depart_id};dept_id→dept_name,其满足()。
A.1NFB.2NFC.3NFD.BCNF9.设有关系模式R(A,B,C,D),其数据依赖集:F={(A,B)→C,C→D},则关系模式R的规范化程度最高达到()。
A.1NFB.2NFC.3NFD.BCNF10.在关系模式R(A,B,C,D)中,存在函数依赖关系{A→B,A→C,A →D,(B,C)→A},则候选码是___________,关系模式R(A,B,C,D)属于____________11 . 在关系模式R(A,C,D)中,存在函数依赖关系{ A→C,A→D},则候选码是___________,关系模式R(A,C,D)最高可以达到_____________ 。
中南大学数据库习题(刘安丰老师提供的)
第六章习题一.选择题1.规范化理论是关系数据库进行逻辑设计的理论依据。
根据这个理论,关系数据库中的关系必须满足:其每一个属性都是(B )A)互不相关的 B)不可分解的 C)长度可变的D)互相关联的2.关系数据库规范化是为解决关系数据库中( A)问题而引入的。
A)插入、删除和数据冗余 B)提高查询速度C)减少数据操作的复杂性 D)保证数据的安全性和完整性。
3.规范化过程主要为克服数据库逻辑结构中的插入异常、删除异常以及(C )的缺陷。
A)数据的不一致性 B)结构不合理 C)冗余度大 D)数据丢失4.关系模型中的关系模式至少是( A )A)1NF B)2NF C)3NF D)BCNF5.以下哪一条属于关系数据库的规范化理论要解决的问题?(A )A)如何构造合适的数据库逻辑结构B)如何构造合适的数据库物理结构C)如何构造合适的应用程序界面D)如何控制不同用户的数据操作权限6.下列关于关系数据库的规范化理论的叙述中,哪一条是不正确的?(A )A)规范化理论提供了判断关系模式优劣的理论标准B)规范化理论提供了判断关系数据库管理系统优劣的理论标准C)规范化理论对于关系数据库设计具有重要指导意义D)规范化理论对于其它模型的数据库的设计也有重要指导意义7.下列哪一条不是由于关系模式设计不当所引起的问题?BA)数据冗余B)插入异常C)删除异常D)丢失修改8.下列关于部分函数依赖的叙述中,哪一条是正确的?(D)A)若X→Y,且存在属性集Z,Z∩Y≠Φ,X→Z,则称Y对X部分函数依赖B)若X→Y,且存在属性集Z,Z∩Y=Φ,X→Z,则称Y对X部分函数依赖C)若X→Y,且存在X的真子集X′,X′Y,则称Y对X部分函数依赖D)若X→Y,且存在X的真子集X′,X′→Y,则称Y对X部分函数依赖9.下列关于关系模式的码的叙述中,哪一项是不正确的?(C )A)当候选码多于一个时,选定其中一个作为主码B)主码可以是单个属性,也可以是属性组C)不包含在主码中的属性称为非主属性D)若一个关系模式中的所有属性构成码,则称为全码10.在关系模式中,如果属性A和B存在1对1的联系,则(C )A)A→B B)B→A C)A B D)以上都不是11.候选关键字中的属性称为(B )A)非主属性B)主属性C)复合属性D)关键属性12.由于关系模式设计不当所引起的插入异常指的是(D )A)两个事务并发地对同一关系进行插入而造成数据库不一致B)由于码值的一部分为空而不能将有用的信息作为一个元组插入到关系中C)未经授权的用户对关系进行了插入D)插入操作因为违反完整性约束条件而遭到拒绝13.X→Ai成立是X→A1A2…Ak成立的(C )A)充分条件B)必要条件C)充要条件D)既不充分也不必要14.任何一个满足2NF但不满足3NF的关系模式都存在(D)A)主属性对候选码的部分依赖B)非主属性对候选码的部分依赖C)主属性对候选码的传递依赖D)非主属性对候选码的传递依赖15.设有关系模式R(A,B,C,D),其函数依赖集F={(A,B)→C,C→D},则关系模式R的规范化程度最高达到(C )。
数据库理论习题及答案
单项选择1. 现有学生关系Student ,属性包括学号(Sno),姓名(Snam© ,所在系(Sdept), 系主任姓名(Mnam©,课程名(Cn am©和成绩(Grade)。
这些属性之间存在如下联系:一个学号只对应一个学生;一个学生只对应一个系;一个系只对应一个系主任;一个学生的一门课只对应一个成绩;学生名可以重复;系名不重复;课程名不重复。
则以下不正确的函数依赖是(C)。
A. Sno f Sdept「B. Sno f Mn amepC. Sn ame f SdeptpD. Sno Cn ame f Grade2. 下面关于函数依赖的描述,错误的是(D)。
厂A.在函数依赖A fB中,A称为决定因素「B.在关系R中,属性B依赖于属性A,则说明当属性A的值确定之后,属性B的值也就随之确定厂C.函数依赖具有传递性厂D.在关系R中,如果属性A依赖于属性B,这种依赖正式记作:A fB3. 现给定一个关系R的实例如下表,则可能是函数依赖的是(B)。
A. F1 f F2B. F1 F2 f F5C. F3 F4 f F5D. F2 F3 — F44. 关系R包含属性{A1 , A2, A3, A4, A5},其中{A1 , A2}为键码(key),则下面的说法正确的是(C )。
A. {A1}或者{A2}有可能单独成为R的键码广B. {A1,A2, A3}必然也是R的键码广C. R中绝不可能出现两个在A1、A2上取值完全相同的元组厂D. R的所有元组中,A1或者A2的值都是不能重复的5. 下面关于键码的说法,错误的是()。
' A. 一个关系的键码是惟一的r B. 一个关系的键码指定值之后,对应的元组也就确定了「C.关系R的键码的任何真子集都不可能是关系R的键码广D.在保存学生学籍信息处的关系,学生姓名对应的属性不适合单独作为键码6. 在给出的如下表所示关系实例中,有可能作为键码的是(C )。
关系数据库设计理论练习题(答案) (1)
第四章关系数据库设计理论练习题一、选择题1、关系规范化中的删除操作异常是指①A,插入操作异常是指②DA、不该删除的数据被删除.B、不该插入的数据被插入;C、应该删除的数据未被删除;D、应该插入的数据未被插入.2、关系数据库规范化是为解决关系数据库中()问题而引入的。
A、插入异常、删除异常和数据冗余;B、提高查询速度;C、减少数据操作的复杂性;D、保证数据的安全性和完整性。
3、假设关系模式R(A,B)属于3NF,下列说法中()是正确的。
A、R一定消除了插入和删除异常;B、R仍可能存在一定的插入和删除异常;C、R一定属于BCNF;D、A和C都是.4、关系模式的分解A、唯一B、不唯一.5、设有关系W(工号,姓名,工种,定额),将其规范化到第三范式正确的答案是()A、W1(工号,姓名),W2(工种,定额);B、W1(工号,工种,定额),W2(工号,姓名);C、W1(工号,姓名,工种),W2(工种,定额);D、以上都不对.6、设学生关系模式为:学生(学号,姓名,年龄,性别,平均成绩,专业),则该关系模式的主键是()A、姓名;B、学号,姓名;C、学号;D、学号,姓名,年龄. 7根据数据库规范化理论,下面命题中正确的是()A、若R∈2NF,则R∈3NFB、若R∈1NF,则R不属于BCNFC、若R∈3NF,则R∈BCNFD、若R∈BCNF,则R∈3NF8、关系数据库设计理论中,起核心作用的是A、范式;B、模式设计;C、函数依赖;D、数据完整性.9、设计性能较优的关系模设称为规范化,规范化的主要理论依据是()A、关系规范化理论;B、关系运算理论;C 、关系代数理论;D 、数理逻辑。
10、规范化理论是关系数据库进行逻辑设计的理论依据。
根据这个理论,关系数据库中的关系必须满足:其每一属性都是( )A 、互不相关的;B 、不可分解的C 、长度可变的;D 、互相关联的。
11、规范化过程主要为克服数据库逻辑结构中的插入异常、删除异常以及( )的缺陷。
数据库原理04-1 关系规范化理论
46
第四范式(续)
例: Teach(C,T,B) ∈ 4NF。 存在非平凡的多值依赖
C→→T, C→→B且C不是候选码
• 用投影分解法把Teach分解为如下两个关系模式:
CT(C, T) ∈ 4NF CB(C, B) ∈ 4NF C→→T, C→→B是平凡多值依赖
47
规范化小结
• 关系数据库的规范化理论是数据库逻辑 设计的工具。 • 一个关系只要其分量都是不可分的数据 项,它就是规范化的关系,但这只是最 基本的规范化。 • 规范化程度可以有多个不同的级别
8
例:U={学号,系部,系主任,课程名称,成绩} F={学号→系部,系部 →系主任, (学号,课程名称) →成绩}
注意:函数依赖不是指关系模式R的某 个或某些关系满足的条件,而是指R的 一切关系均要满足的约束条件
9
由定义可以导出下列概念:
1. 决定因素:若X →Y,则X叫做决定因素 2. 平凡的函数依赖:X →Y,Y X,则称 X→Y是平凡的函数依赖。 3. 非平凡的函数依赖:X →Y,但Y X, 则称X→Y是非平凡的函数依赖。 4. 互相依赖:若X→Y, Y→X, 则记作X ←→Y。 5. 若Y不函数依赖于X,则记作X → Y。
10
定义4.2 :完全函数依赖
在R(U)中,如果X →Y,并且对于X的任 何一个真子集X’,都有X’ →Y,则称Y对X完 全函数依赖。记作: F Y X
定义4.3 :部分函数依赖
在R(U)中,如果X →Y,并且对于X的一 个真子集X’,有X’ → Y,则称Y对X部分函 数依赖。记作: P Y X
定义4.4:传递函数依赖
规范化 数据依赖的公理系统 模式分解
1
一个低一级范式的关系模式,通过模 式分解可以转换为若干个高一级范式 的关系模式的集合,这种过程就叫做 规范化。 范式表示关系模式满足的某种级别。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
规范化理论习题1. 解释下列名词:函数依赖、部分函数依赖、完全函数依赖、传递函数依赖、候选关键字、主关键字、全关键字、1NF 、2NF 、3NF 、BCNF 、多值依赖、4NF 、连接依赖、5NF 、最小函数依赖集、无损分解函数依赖:FD(function dependency),设有关系模式R(U),X ,Y 是U 的子集, r 是R 的任一具体关系,如果对r 的任意两个元组t1,t2,由t1[X]=t2[X]导致t1[Y]=t2[Y], 则称X 函数决定Y,或Y 函数依赖于X ,记为X→Y 。
X→Y 为模式R 的一个函数依赖。
部分函数依赖:即局部依赖,对于一个函数依赖W→A ,如果存在X W(X 包含于W)有X→A 成立, 那么称W→A 是局部依赖,否则称W→A 为完全依赖。
完全函数依赖:见上。
传递函数依赖:在关系模式中,如果Y→X ,X→A ,且X Y (X 不决定Y ), A X (A 不属于X ),那么称Y→A 是传递依赖。
候选关键字:设K 为关系模式R (U ,F )中的属性或属性集合。
若F U ,则K 称为R 的一个候选码(Candidate Key ),也称作为候选关键字或码。
主关键字:若关系模式R 有多个候选码,则选定其中一个作为主关键字(Primary Key ),有时也称作为主码。
全关键字:若关系模式R 整个属性组都是码,称为全关键字(All Key )或全码。
1NF :第一范式。
如果关系模式R 的所有属性的值域中每一个值都是不可再分解的值, 则称R 是属于第一范式模式。
如果某个数据库模式都是第一范式的,则称该数据库存模式属于第一范式的数据库模式。
第一范式的模式要求属性值不可再分裂成更小部分,即属性项不能是属性组合和组属性组成。
2NF :第二范式。
如果关系模式R 为第一范式,并且R 中每一个非主属性完全函数依赖于R 的某个候选键, 则称是第二范式模式;如果某个数据库模式中每个关系模式都是第二范式的,则称该数据库模式属于第二范式的数据库模式。
(注:如果A 是关系模式R 的候选键的一个属性,则称A 是R 的主属性,否则称A 是R 的非主属性。
) 。
3NF :第三范式。
如果关系模式R 是第二范式,且每个非主属性都不传递依赖于R 的候选键, 则称R 是第三范式的模式。
如果某个数据库模式中的每个关系模式都是第三范式,则称为3NF 的数据库模式。
BCNF :BC 范式。
如果关系模式R 是第一范式,且每个属性都不传递依赖于R 的候选键,那么称R 是BCNF 的模式。
多值依赖:设R(U)是属性集U 上的一个关系模式,X ,Y ,Z 是U 的子集,并且Z=U-X-Y , 用x,y,z 分别代表属性集X,Y ,Z 的值,只要r 是R 的关系,r 中存在元组(x,y1,z1)和(x,y2,z2)时,就也存在元组(x,y1,z2)和(x,y2,z1),那么称多值依赖(MultiValued Dependency MVD) X→→Y 在关系模式R 中成立。
4NF :第四范式。
设R 是一个关系模式,D 是R 上的多值依赖集合。
如果D 中成立非平凡多值依赖X→→Y 时, X 必是R 的超键,那么称R 是第四范式的模式。
连接依赖:关系模式R(U)中,U 是全体属性集,X ,Y ,…,Z 是U 的子集,当且仅当R是由其在X ,Y ,…,Z 上投影的自然连接组成时,称R 满足对X ,Y ,…,Z 的连接依赖。
记为JD (X ,Y ,…,Z )。
5NF :关于模式R 中,当且仅当R 中每个连接依赖均为R 的候选码所蕴涵时,称R 属于5NF 。
最小函数依赖集:如果函数集合F满足以下三个条件:(1)F中每个函数依赖的右部都是单属性;(2)F中的任一函数依赖X→A,其F-{X→A}与F是不等价的;(3)F中的任一函数依赖X→A,Z为X的子集,(F-{X→A})∪{Z→A}与F不等价。
则称F为最小函数依赖集合,记为Fmin。
无损分解:设R是一个关系模式,F是R上的一个依赖集,R分解为关系模式的集合ρ={R1(U1),R2(U2), …,Rn(Un)}。
如果对于R中满足F的每一个关系r,都有r=∏R1(r) ⊳⊲∏R2(r) ⊳⊲…⊳⊲∏Rn(r)则称分解相对于F是无损连接分解(lossingless join decomposition),简称为无损分解,否则就称为有损分解(lossy decomposition)。
2. 现要建立关于系、学生、班级、学会等信息的一个关系数据库。
语义为:一个系有若干专业,每个专业每年只招一个班,每个班有若干学生,一个系的学生住在同一个宿舍区,每个学生可参加若干学会,每个学会有若干学生。
描述学生的属性有:学号、姓名、出生日期、系名、班号、宿舍区;描述班级的属性有:班号、专业名、系名、人数、入校年份;描述系的属性有:系名、系号、系办公室地点、人数;描述学会的属性有:学会名、成立年份、地点、人数、学生参加某会有一个入会年份。
⑴请写出关系模式。
⑵写出每个关系模式的最小函数依赖集,指出是否存在传递依赖,在函数依赖左部是多属性的情况下,讨论函数依赖是完全依赖,还是部分依赖。
⑶指出各个关系模式的候选关键字、外部关键字,有没有全关键字。
解:各关系模式如下:学生(学号,姓名,出生年月,系名,班级号,宿舍区)班级(班级号,专业名,系名,人数,入校年份)系(系名,系号,系办公地点,人数)社团(社团名,成立年份,地点,人数)加入社团(社团名,学号,学生参加社团的年份)学生(学号,姓名,出生年月,系名,班级号,宿舍区)●“学生”关系的最小函数依赖集为:Fmin={学号→姓名,学号→班级号,学号→出生年月,学号→系名,系名→宿舍区}●以上关系模式中存在传递函数依赖,如:学号→系名,系名→宿舍区●候选键是学号,外部键是班级号,系名。
注意: 在关系模式中,如果Y→X,X→A,且X Y(X不决定Y),A不属于X,那么称Y→A是传递依赖。
班级(班级号,专业名,系名,人数,入校年份)●“班级”关系的最小函数依赖集为:Fmin={(系名,专业名)→班级号,班级号→人数,班级号→入校年份,班级号→系名,班级号→专业名}(假设没有相同的系,不同系中专业名可以相同)●以上关系模式中不存在传递函数依赖。
●“(系名,专业名)→班级号”是完全函数依赖。
●候选键是(系名,专业名),班级号,外部键是系名。
系(系名,系号,系办公地点,人数)●“系”关系的最小函数依赖集为:Fmin={系号→系名,系名→系办公地点,系名→人数,系名→系号}●以上关系模式中不存在传递函数依赖●候选键是系名,系号社团(社团名,成立年份,地点,人数)●“社团”关系的最小函数依赖集为:Fmin={社团名→成立年份,社团名→地点,社团名→人数}●以上关系模式中不存在传递函数依赖。
●候选键是社团名加入社团(社团名,学号,学生参加社团的年份)●“加入社团”关系的最小函数依赖集为:Fmin={(社团名,学号)→学生参加社团的年份}●“(社团名,学号)→学生参加社团的年份”是完全函数依赖。
●以上关系模式中不存在传递函数依赖。
●候选键是(社团名,学号)。
3. 设关系模式R(A,B,C,D),函数依赖集F={A→C,C→A,B→AC,D→AC,BD→A}。
1)求出R的候选码;2)求出F的最小函数依赖集;3)将R分解为3NF,使其既具有无损连接性又具有函数依赖保持性。
解:(1)根据函数依赖可得:属性B、D、BD为L类(仅出现在F的函数依赖左部)。
且在函数依赖的左部和右部均未出现的属性为0。
根据定理:对于给定的关系模式R及其函数依赖集F,若X(X∈R)是L类属性,则X 必为R 的任一候选码的成员。
因此属性B、D必为候选码的成员。
且它们的闭包为:B F+=ABC,D F+=ACD,BD F+=ABCD再根据推论:对于给定的关系模式R及其函数依赖集F,若X(X∈R)是L类属性,且X +包含了R的全部属性,则X必为R的唯一候选码。
F故BD是R的唯一候选码。
所以R的候选码为BD。
(2)将F中所有函数依赖的依赖因素写成单属性集形式:F={A→C,C→A,B→A,B→C,D→A,D→C,BD→A}F中的B→C可以从B→A和A→C推导出来,B→C是冗余的,删掉B→C可得:F={A→C,C→A,B→A,D→A,D→C,BD→A}F中的D→C可以从D→A 和A→C推导出来,D→C是冗余的,删掉D→C可得:F={A→C,C→A,B→A,D→A,BD→A}F中的BD→A可以从B→A 和D→A推导出来,是冗余的,删掉BD→A可得:F={A→C,C→A,B→A,D→A }所以F的最小函数依赖集Fmin={A→C,C→A,B→A,D→A }。
(3) 由于R中的所有属性均在Fmin中都出现,对F按具有相同左部的原则分为:R1=AC,R2=BA,R3=DA。
其中,U1={A,C},U2={B,A},U3={D,A},F1= F1=∏U1={A →C},F2=∏U2={B→A},F3=∏U3={D→A}。
所以ρ={R1(AC),R2(BA),R3(DA) }。
4.设关系模式R(A,B,C,D,E,F),函数依赖集F={A B→E,BC→D,BE→C,CD→B,CE→AF,CF→BD,C→A,D→EF},求F的最小函数依赖集。
解:①利用分解规则,将所有的函数依赖变成右边都是单个属性的函数依赖,得F为:F ={A B→E,BC→D,BE→C,CD→B,CE→A,CE→F,CF→B,CF→D,C→A,D→E,D→F}②去掉F中多余的函数依赖A.设AB→E为冗余的函数依赖,则从F中去掉AB→E,得:F1={ BC→D,BE→C,CD→B,CE→A,CE→F,CF→B,CF→D,C→A,D→E,D→F}计算(AB)F1+:设X(0)=AB计算X(1):扫描F1中各个函数依赖,找到左部为AB或AB子集的函数依赖,因为找不到这样的函数依赖。
故有X(1)=X(0)=AB,算法终止。
(AB)F1+= AB不包含E,故AB→E不是冗余的函数依赖,不能从F中去掉。
即:F1={ A B→E,BC→D,BE→C,CD→B,CE→A,CE→F,CF→B,CF→D,C→A,D→E,D→F} B.设BC→D为冗余的函数依赖,则从F1中去掉BC→D,得:F2={A B→E,BE→C,CD→B,CE→A,CE→F,CF→B,CF→D,C→A,D→E,D→F}计算(BC)F2+:设X(0)=BC计算X(1):扫描F2中的各个函数依赖,找到左部为BC或BC子集的函数依赖,得到一个C→A函数依赖。
故有X(1)=X(0)∪A=BCA=ABC。
计算X(2):扫描F2中的各个函数依赖,找到左部为ABC或ABC子集的函数依赖,得到一个A B→E函数依赖。