数据库原理与应用(MySQL版) 第3章 关系数据库 习题参考答案.docx
第3章关系数据库习题参考答案
选择题
下列关于关系中主属性的描述,错误的是
主键所包含的属性都是主属性
外键所引用的属性一定是主属性
候选键所包含的属性都是主属性
任何一个主属性都可以唯一地标识表中的一行数据
答:D
设有关系模式:销售(顾客号,商品号,销售时间,销售数量),若一个商品可在不同时间多次销售给同一个顾客,同一个顾客在同一时间可购买多种商品,则此关系模式的主键是
A.顾客号 B.产品号
C.(顾客号,商品号) D.(顾客号,商品号,销售时间)
答:D
关系数据库用二维表来组织数据。下列关于关系表中记录排列顺序的说法,正确的是
A.顺序很重要,不能交换 B.顺序不重要
C.按输入数据的顺序排列 D.一定是有序的
答:B
下列不属于数据完整性约束的是
A.实体完整性 B.参照完整性
C.域完整性 D.数据操作完整性
答:D
下列关于关系操作的说法,正确的是
A.关系操作是基于集合的操作
B.在进行关系操作时,用户需要知道数据的存储位置
C.在进行关系操作时,用户需要知道数据的存储结构
D.用户可以在关系上直接进行行定位操作
答:A
下列关于关系的说法,错误的是
A.关系中的每个属性都是不可再分的基本属性
B.关系中不允许出现值完全相同的元组
C.关系中不需要考虑元组的先后顺序
D.关系中属性顺序的不同,关系所表达的语义也不同
答:D
下列关于关系代数中选择运算的说法,正确的是
A.选择运算是从行的方向选择集合中的数据,选择运算后的行数有可能减少
B.选择运算是从行的方向选择集合中的数据,选择运算后的行数不变
C.选择运算是从列的方向选择集合中的若干列,选择运算后的列数有可能减少
D.选择运算是从列的方向选择集合中的若干列,选择运算后的列数不变
答:A
下列用于表达关系代数中投影运算的运算符是
σ B.∏ C. D.+
答:B
下列关于关系代数中差运算结果的说法,正确的是
A.差运算的结果包含了两个关系中的全部元组,因此有可能有重复的元组
B.差运算的结果包含了两个关系中的全部元组,但不会有重复的元组
C.差运算的结果只包含两个关系中相同的元组
D.“A-B”差运算的结果由属于A但不属于B的元组组成
答:D
设有如下三个关系模式,学生(学号,姓名,性别),图书(书号,书名,出版社)和借阅(学号,书号,借书日期)。现要查询赵飞借的图书的书名和出版社,下列关系代数表达式正确的是
A.∏书名,出版社(σ姓名=‘赵飞’(学生)图书借阅)
B.∏书名,出版社(σ姓名=‘赵飞’(学生)借阅图书)
C.∏书名,出版社(σ姓名=‘赵飞’(学生图书借阅))
D.∏书名,出版社(σ姓名=‘赵飞’(图书学生借阅))
答:B
二、简答题
试述关系模型的三个组成部分。
答:关系模型包括数据结构、数据操作和数据完整性约束。
解释下列术语的含义:
主键
候选键
关系
关系模式
关系数据库
答:
(1)主键:主键也称为主码或主关键字,是表中的属性或属性集,用于唯一地确定一个元组。
(2)候选键:如果一个属性或属性集(或叫属性组)的值能够唯一标识一个关系的元组而又不包含多余的属性,则称该属性或属性集为候选键。
(3)关系:关系就是简单二维表。
(4)关系模式:二维表的结构称为关系模式,或者说,关系模式就是二维表的表头结构。
(5)关系数据库:对应于关系模型的所有关系的集合称为关系数据库。
关系数据库的三个完整性约束是什么?各是什么含义?
答:实体完整性、参照完整性、用户定义的完整性约束。
实体完整性:实体完整性是保证关系中的每个元组都是可识别的和唯一的。实体完整性是指关系数据库中所有的表都必须有主键,而且表中不允许存在无主键值的记录、主键值相同的记录。
参照完整性:参照完整性也称为引用完整性。现实世界中的实体之间往往存在着某种联系,在关系模型中,实体以及实体之间的联系都是用关系来表示的,这样就自然存在着关系与关系之间的引用。参照完整性就是描述实体之间的联系的。
用户定义的完整性约束:用户定义的完整性是针对某一具体应用领域定义的数据约束条件,它反映某一具体应用所涉及的数据必须满足应用语义的要求,实际上就是指明关系中属性的取值范围。
根据如下给出的三个关系模式(各属性含义见3.4.3节),写出实现如下查询的关系代数表达式。
students(SID,sname,gender,college)
books(ISBN,bname,category,press,price)
borrow(ISBN,SID,borrow_time,return_time)
查询“计算机学院”学生的借阅情况,列出学号、姓名、图书ISBN号和借书时间