数据库答案
数据库复习题
第一章
BY:向宇
5、什么是数据库管理系统?它的主要功能是什么?(P5)
答:数据库管理系统(DBMS )是专门用于管理数据库的计算机系统软件。它能够为数据库提供数据的定义、建立、维护、查询和统计等操作功能,并完成对数据完整性、安全性进行控制的功能。
14、数据库系统的软件由几部分组成?它们的作用及关系是什么?(P15) 答:包括操作系统(OS )、数据库管理系统(DBMS )、主语言编译系统、数据库应用开发系统及工具、数据库应用系统和数据库。
(1) 操作系统:在数据库系统中起着支持DBMS 及主语言系统工作的作用。 (2) 数据库管理系统:为定义、建立、维护、使用及控制数据库而提供有关
数据管理的系统软件。
(3) 主语言编译系统:为应用程序提供诸如程序控制、数据输入输出、功能
函数、图形处理、计算方法等数据处理功能的系统软件。
(4) 数据库应用开发系统及工具:为应用开发人员和最终用户提供的高效率、
多功能的应用生成器、第四代计算机语言等各种软件工具。
(5) 数据库应用系统和数据库:包括为特定应用环境建立的数据库、开发各
类应用程序及编写的文档资料,它们是一个有机整体。 16、试述数据库系统的三级模式结构及每级模式的作用。(P16) 答:数据库的三级模式是指逻辑模式、外模式、内模式。
(1) 逻辑模式:是对数据库中数据的整体逻辑结构和特征的描述。它
是系统为了减小数据冗余,实现数据共享的目标并对所有用户的数据进行综合抽象而得到的统一的全局数据视图。一个数据库系统只能有一个逻辑模式,以逻辑模式为框架的数据库为概念数据库。
(2) 外模式及用户数据库:外模式也称子模式,是对各个用户或程序
所涉及到的数据的逻辑结构和数据特征的描述。由于子模式是面向用户或程序设计的,所以它被称为用户数据视图。
(3) 内模式及物理数据库:内模式也叫存储模式或物理模式。它是对
数据的内部表示或底层描述。物理模式的设计目标是将系统的模式(全局逻辑模式)组织成最优的物理模式,以提高数据的存取效率,改善系统的性能指标。
19、在下面所列出的条目中,哪些是数据库管理系统的基本功能(A 、B 、C ) A 、数据库定义 C 、数据库存取
B 、数据库的建立和维护
D 、数据库和网络中其他软件系统的通信
21、在下面所列出的条目中,哪些是数据库技术的主要特点(A 、B 、C ) A 、数据的结构化
B 、数据的冗余度小 D 、程序的标准化
C 、较高的数据独立性
26、数据库系统与文件系统的主要区别是(B ) A 、数据库系统复杂,而文件系统简单。
B 、文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决。 C 、文件系统只能管理程序文件,而数据库系统能够管理各种类型的文件。 D 、文件系统管理的数据量较少,而数据库系统可以管理庞大的数据量。 36、数据库管理系统能实现对数据库中数据的查询、插入、修改和删除等操作,这种功能称为(C ) A 、数据定义功能 C 、数据操纵功能
B 、数据管理功能 D 、数据控制功能
39、数据库的完整性是指数据的(A ) A 、正确性和相容性
B 、合法性和不被恶意破坏 D 、合法性和相容性
C 、正确性和不被非法存取
42、要保证数据库的数据独立性,需要修改的是(A ) A 、三层模式之间的两种映射 C 、模式与外模式
B 、模式与内模式 D 、三层模式
45、下列4项说法中不正确的是(C ) A 、数据共享
B 、数据完整性 D 、数据独立性高
C 、数据冗余度很高
第二章
4、试给出3个实际部门的E-R 图,要求实体型之间具有一对一,一对多,多对多各种不同的联系。
答:
5、学校中有若干系,每个系有若干班级和教研室,每个教研室有若干教师,其中的一些教授和副教授每人各带若干研究生。每个班有若干学生,每个学生选修若干课程,每门课程可以由若干学生选修。用E-R 图画出此学校的概念模型。 答:
16、下述哪一条不属于概念模型应具备的品质(A 、D ) A 、有丰富的语义表达能力
B 、易于交流和理解
C 、易于变动 D 、在计算机中实现的效率高
18、一台机器可以加工多种零件,每一种零件可以在多台机器上加工,机器与零件之间为(C )的联系。 A 、一对一 C 、多对多
B 、一对多 D 、多对一
19、层次模型不能直接表示(C )关系 A 、1:1关系 C 、m :n 关系
B 、1:m 关系 D 、1:1和m :n 关系
23、对关系模型叙述错误的是(D )
A 、建立在严格的数学理论、集合论和谓词演算公式的基础之上。 B 、微机DBMS 绝大部分采取关系型数据库。 C 、用二维表表示关系模型是其一大特点。
D 、不具有连接操作的DBMS 也可以是关系型数据库系统。 24、关系模型中,候选码(C ) A 、可由多个任意属性组成
B 、至多由一个属性组成
C 、可由一个或多个其值能唯一标识该关系模式中任何元组的属性组成。 D 、以上都不是。
第三章
10、什么是E-R 图?构成E-R 图的基本要素是什么?
答:E-R 图是描述现实世界的概念模型的图形,E-R 图也称为实体-联系图,它提供了表示实体集、属性和联系的方法。构成E-R 图的基本要素是实体集、属性和联系。
18、现有一个局部应用,包括两个实体:“出版社”和“作者”,这两个实体是多对多的联系,请设计适当的属性,画出E-R 图,再将其转换为关系模型(包括关系名、属性名、码和完整性约束条件)。
答:
出版社(出版社名,地址,邮政编码) 作者(姓名,性别,年龄,证件号码,单位) 出版(出版社名,作者姓名,出书数量,联系方式)
19、请设计一个图书馆数据库,此数据库中对每个借阅者保存记录,包括:读者号,姓名,地址,性别,年龄,单位。对每本书保存有:书号,书名,作者,出版社。对每本被借出的书保存有:读者号,借出日期和应还日期。要求:给出该图书馆数据库的E-R 图,再将其转换为关系模型。 答:
其中:
读者:读者号,姓名,地址,性别,年龄,单位; 图书:书号,书名,作者,出版社。
转换后的关系模型为:
借阅者(读者号,姓名,地址,性别,年龄,单位) 书籍(书号,书名,作者,出版社)
借阅(读者号,书号,借出日期,应还日期)
20、如图是某个教务管理数据库的E-R 图,请把它们转换为关系模型。(这图就算了,太麻烦)
答:转换后的关系模型如下:
Student(SNO,SN,SD,SA); Teacher(TNO,TN,TD,TG); Course(CNO,CN,PCON); ST(SNO,TNO), SC(SNO,CNO,G); TC(TNO,CNO)。
22、设有一家百货商店,已知信息有:
1)每个职工的数据是职工号、姓名、地址和他所在的商品部。 2)每一商品部的数据有:它的职工、经理和他经销的商品。
3)每种经销的商品具有:商品名、生产厂家、价格、型号(厂家定的)和内部商品代码(商店规定的)。
4)每个生产厂家的数据有:厂名、地址、向商店提供的商品价格。
请设计该百货商店的概念模型,再将概念模型转换为关系模型。注意某些信息可用属性表示,其他信息可用联系表示。 答:
图中:
职工:职工号、姓名、地址; 商品部:商品部号,名称;
商品:商品代号,价格,型号,出厂价格; 生产厂家:厂名,地址。
转换后的关系模型为:
职工(职工号、姓名、地址,工作商品部); 商品部(商品部号,名称,经理职工号,经理名); 商品(商品代号,价格,型号,出厂价格); 生产厂家(厂名,地址); 销售(商品代号,商品部号); 生产(厂名,商品代号)。
23、这题太麻烦。
24、下面有关E-R 模型向关系模型转换的叙述中,不正确的是(C )
A 、 一个实体类型转换为一个关系模式。
B 、一个1:1联系可以转换为一个独立的关系模型,也可以与联系的任意一端实体所对应的关系模式合并。
C 、一个1:n联系可以转换为一个独立的关系模型,也可以与联系的任意一端实体所对应的关系模式合并。
D 、 一个m:n联系转换为一个关系模式。
25、下面关于数据库设计步骤的说法错误的有(C )
A 、数据库设计一般分为四步:需求分析、概念设计、逻辑设计和物理设计。 B 、数据库的概念模式是独立于任何数据库管理系统,不能直接用于数据库实现的。
C 、物理结构设计阶段对数据库的性能影响已经很小了。 D 、逻辑设计是在概念设计的基础上进行的。
第四章
13、对于学生选课关系,其关系模式为: 学生(学号,姓名,年龄,所在系); 课程(课程名,课程号,先行课); 选课(学号,课程号,成绩) 用关系代数完成如下查询。
1)求学过数据库课程的学生的姓名和学号。
答:
π姓名,学号(σ课程名=‘数据库’(学生⋈选课⋈课程))
2)求学过数据库和数据结构课程的学生的姓名和学号。
答:
π姓名,学号(σ课程名=‘数据库’(学生⋈选课⋈课程))∩π姓名,σ课程名=‘数据结构’(学生⋈选课⋈课程))
学号(
3)求没学过数据库课程的学生的姓名和学号
答:
π姓名,学号 (学生)—π姓名,学号(σ课程名=‘数据库’(学生⋈选
课⋈课程))
4)求学过数据库的先行课的学生学号 答: 14、题目麻烦 答:
16、题目麻烦 答:
18、下面对于关系的叙述中,哪个是不正确的?(D) A 、关系中的每个属性是不可分解的 C 、任意的一个二维表都是一个关系
B 、在关系中元组的顺序是无关紧要的 D 、每一个关系只有一种记录类型
24、假定学生关系是S (S#,SNMAE,SEX,AGE ),课程关系是C (C#,CNAME,TEACHEAR ), 学生选课关系是SC (S#,C#,GRADE)。要查找选修“COMPUTER ”课程的“女”学生姓名,将涉及到关系(D ) A 、S
B 、SC,C
C 、S 、SC
D 、S ,C ,SC
33、关系数据库管理系统应能实现的专门关系运算包括(B ) A 、排序、索引、统计 C 、关联、更新、排序
B 、选择、投影、连接 D 、显示、打印、制表
38、在关系代数运算中,5种基本运算为(C ) A 、并、差、选择、投影、自然连接 C 、并、差、选择、投影、乘积
B 、并、差、交、选择、投影 D 、并、差、交、选择、乘积
48、概念结构设计阶段得到的结果是(B ) A 、数据字典描述的数据需求
B 、E-R 图表示的概念模型
C 、某个DBMS 所支持的数据类型 D、包括存储结构和存取方法的物理结构 50、在视图上不能完成的操作是(C ) A 、更新视图
B 、查询
D 、在视图上定义新视图
C 、在视图上定义新的基本表
51、关系数据模型的3个组成部分中,不包括(C ) A 、完整性规则 C 、恢复
B 、数据结构 D 、数据操作
52、下面的4项中,不属于关系数据库特点的是(D ) A 、数据冗余小 C 、数据共享性好
B 、数据独立性高 D 、多用户访问
第五章
5、设职工-社团数据库有3个基本表:
职工(职工号,姓名,年龄,性别);
社会团体(编号,名称,负责人,活动地点);
参加(职工号,编号,参加日期)
其中:1)职工表的主码为职工号。
2)社会团体的主码为编号;外码为负责人,被参照表为职工表,对应属性为职工号。
3)参加表的职工号和编号为主码;职工号为外码,其被参照表为职工表,对应属性为职工号;编号为外码,其被参照表为社会团体表,对应属性为编号 用SQL 语句表达如下操作:
1) 定义职工表、社会团体表和参加表,并说明其主码和参照关系。
答:CREATE TABLEA 职工(职工号 CHAR(10) NOT NULL UNIQUE,
姓名 CHAR(8) NOT NULL, 年龄 SMALLINT, 性别 CHAR(2), CONSTRAINT C1 CHECK (性别 IN (‘男’,‘女’)) ); CREATE TABLEA 社会团体(编号 CHAR(8) NOT NULL UNIQUE,
名称 CHAR(12) NOT NULL, 负责人 CHAR(8), 活动地点 VARCHAR(50), CONSTRAINT C2 FOREIGN KEY(负责人) REFERENCES职工(职工号));
CREATE TABLEA 参加(职工号 CHAR(8),
编号 CHAR(8), 参加日期DATE ; CONSTRAINT C3 PRIMARY KEY(职工号,编号), CONSTRAINT C3 FOREIGN KEY(职工号) REFERENCES职工(职工号));
2)建立下列两个视图。
社团负责人(编号,名称,负责人职工号,负责人姓名,负责人性别) 参加人情况(职工号,姓名,社团编号,社团名称,参加日期)
答:CREATE VIEW 社团负责人(编号,名称,负责人职工号,负责人姓名,负责人性别)
AS SELECT编号,名称,负责人,姓名,性别 FROM 社会团体,职工 WHERE 社会团体,负责人=职工. 职工号;
CREATE VIEW 参加人情况(职工号,姓名,社团编号,社团名称,参
加日期)
AS SELECT 参加. 职工号,姓名,社会团体. 编号,名称,参加日期
FROM 职工,社会团体,参加
WHERE 职工. 职工号=参加. 职工号AND 参加. 编号=社会团体. 编号;
3)查找参加歌唱队或篮球队的职工号和姓名。
答:SELECT 职工号,姓名
FROM 职工,社会团体,参加
WHERE 职工. 职工号=参加. 职工号AND 参加. 编号=社会团体. 编号AND 社会团体. 名称IN (‘歌唱队’,‘篮球队’);
7)求每个社会团体的参加人数。
答:
8)求参加人数最多的社会团体的名称和参加人数。
答:
6、设工程-零件数据库中有4个基本表:
供应商(供应商代码,姓名,所在城市,联系电话);
工程(工程代码,工程名,负责人,预算);
零件(零件代码,零件名,规格,产地,颜色);
供应零件(供应商代码,工程代码,零件代码,数量)。
1)找出天津市供应商的姓名和电话。
答:SELECT 姓名,联系电话
FROM 供应商
WHERE 所在城市=“天津”;
2)查找预算在50000~100000元之间的工程的信息,将结果按预算降序排列 答:SELECT *
FROM 工程
WHERE 预算 BETWEEN 50000 AND 100000 ORDER BY 预算 DESC;
3)找出使用供应商S1所提供零件的工程号码。
答:SELECT 工程代码
FROM 供应零件
WHERE 供应商代码=“S1”;
4)找出工程项目J2使用的各种零件名称及其 数量。
答:SELECT 零件. 零件名,供应零件. 数量
FROM 零件 供应零件
WHERE 零件. 零件代码=供应零件. 零件代码AND 供应零件. 工程代码=‘J2’;
5)找出上海厂商供应的所有零件号码。
答:SELECT 零件代码
FROM 供应商 供应零件
WHRER 供应商. 供应商代码=供应零件. 供应商代码AND 供应商. 所在城市=‘上海’;
7、关系数据模型如下:
学生S (SNO,SN,SEX,AGE )
课程C (CNO,CN,PCON )
选课SC (SNO,CNO,GR )
用SQL 写出查询程序:
1) 将选修课程“DB ”的学生学号SNO ,姓名SN 建立视图SDB 。 PCON 为直接先行课号 GR 为课程考试成绩
答:CREATE VIEW SDB AS
SELECT SNO,SN
FROM S
WHERE SNO=(SELECT SNO
2) FROM SC WHERE CNO=(SELECT CNO FROM C WHERE CN=’DB ’)) ; 选修课程“DB ”的学生姓名SN
答:SELECT SN
FROM S
WHERE SNO=(SELECT SNO
8、
10、SQL 语言集数据查询、数据操纵、数据定义和数据控制功能于一体,语句INSERT 、DELECT 、UPDATE 实现哪类功能?(B )
A 、数据查询 B 、数据操纵 C 、数据定义 D 、数据控制 FROM SC WHERE CNO=(SELECT CNO FROM C WHERE CN=’DB ’)) ;
11、下列关于视图的条目中,哪一条是不正确的?(C )
A 、视图是外模式 B 、视图是虚表
C 、使用视图可以加快查询语句的执行速度
D 、使用视图可以简化查询语句的编写。
13、SQL 语言集数据查询、数据操纵、数据定义和数据控制功能于一体,语句ALTER TABLE 实现哪类功能?(C )
A 、数据查询 B 、数据操纵 C 、数据定义 D 、数据控制
15、SQL 语言具有(B )的功能。
A 、关系规范化、数据操纵、数据控制 B 、数据定义、数据操纵、数据控制
C 、数据定义、关系规范化、数据控制 D、数据定义、关系规范化、数据操纵
20、检索所有比“王华”年龄大的学生姓名、年龄和性别。正确的SELECT 语句是(B )。
B 、SELECT SN,AGE,SEX FROM S WHERE AGE >(SELECT AGE FROM S WHERE SN=‘王华’) ;
21、检索选修课程“C2”的学生中成绩最高的学生的学号。正确的SELECT 语句是(D)。
D 、SELECT S# FROM SC WHERE C#=’C2’ AND GRADE>=ALL(SELECT GRADE FROM SC WHERE C#=’C2’);
22、检索学生姓名及其所选修课程的课程号和成绩。正确的SELECT 语句是(C )
C 、SELECT S.SN,SC.C#,SC.GRADE FROM S,SC WHERE S.S#=SC.S#;