文档库 最新最全的文档下载
当前位置:文档库 › 数据库原理及应用答案[何玉洁]-2

数据库原理及应用答案[何玉洁]-2

数据库原理及应用答案[何玉洁]-2
数据库原理及应用答案[何玉洁]-2

数据库原理及应用(第2版)习题参考答案

第1章数据概述一.选择题

1.下列关于数据库管理系统的说法,错误的是 C

A.数据库管理系统与操作系统有关,操作系统的类型决定了能够运行的数据库管理系统的类型 B.数据库管理系统对数据库文件的访问必须经过操作系统实现才能实现 C.数据库应用程序可以不经过数据库管理系统而直接读取数据库文件 D.数据库管理系统对用户隐藏了数据库文件的存放位置和文件名

2.下列关于用文件管理数据的说法,错误的是 D

A.用文件管理数据,难以提供应用程序对数据的独立性

B.当存储数据的文件名发生变化时,必须修改访问数据文件的应用程序

C.用文件存储数据的方式难以实现数据访问的安全控制

D.将相关的数据存储在一个文件中,有利于用户对数据进行分类,因此也可以加快用户操作数据的效率

3.下列说法中,不属于数据库管理系统特征的是 C

A.提供了应用程序和数据的独立性

B.所有的数据作为一个整体考虑,因此是相互关联的数据的集合

C.用户访问数据时,需要知道存储数据的文件的物理信息

D.能够保证数据库数据的可靠性,即使在存储数据的硬盘出现故障时,也能防止数据丢失5.在数据库系统中,数据库管理系统和操作系统之间的关系是 D

A.相互调用

B.数据库管理系统调用操作系统

C.操作系统调用数据库管理系统

D.并发运行

6.数据库系统的物理独立性是指 D

A.不会因为数据的变化而影响应用程序

B.不会因为数据存储结构的变化而影响应用程序

C.不会因为数据存储策略的变化而影响数据的存储结构

D.不会因为数据逻辑结构的变化而影响应用程序

7.数据库管理系统是数据库系统的核心,它负责有效地组织、存储和管理数据,它位于用户和操作系统之间,属于 A

A.系统软件 B.工具软件 C.应用软件 D.数据软件

8.数据库系统是由若干部分组成的。下列不属于数据库系统组成部分的是 B A.数据库 B.操作系统 C.应用程序

D.数据库管理系统

9.下列关于客户/服务器结构和文件服务器结构的描述,错误的是 D

A.客户/服务器结构将数据库存储在服务器端,文件服务器结构将数据存储在客户端B.客户/服务器结构返回给客户端的是处理后的结果数据,文件服务器结构返回给客户端的是包含客户所需数据的文件

C.客户/服务器结构比文件服务器结构的网络开销小

D.客户/服务器结构可以提供数据共享功能,而用文件服务器结构存储的数据不能共享

数据库是相互关联的数据的集合,它用综合的方法组织数据,具有较小的数据冗余,可供多个用户共享,具有较高的数据独立性,具有安全控制机制,能够保证数据的安全、可靠,允许并发地使用数据库,能有效、及时地处理数据,并能保证数据的一致性和完整性。10.下列关于数据库技术的描述,错误的是 B

A.数据库中不但需要保存数据,而且还需要保存数据之间的关联关系

B.由于数据是存储在磁盘上的,因此用户在访问数据库数据时需要知道数据的存储位置C.数据库中数据存储结构的变化不会影响到应用程序

D.数据库中的数据具有较小的数据冗余

二.填空题

1.数据管理的发展主要经历了_______和_______两个阶段。文件管理数据库管理

2.在利用数据库技术管理数据时,所有的数据都被_______统一管理。数据库管理系统3.数据库管理系统提供的两个数据独立性是_______独立性和_______独立性。物理逻辑

4.数据库系统能够保证进入到数据库中的数据都是正确的数据,该特征称为_______。数据完整性

5.在客户/服务器结构中,数据的处理是在________端完成的。服务器

6.数据库系统就是基于数据库的计算机应用系统,它主要由________、________和________三部分组成。数据库、数据库管理系统和应用程序

7.与用数据库技术管理数据相比,文件管理系统的数据共享性________,数据独立性________。差低

8.在数据库技术中,当表达现实世界的信息内容发生变化时,可以保证不影响应用程序,这个特性称为______。逻辑独立性

9.当数据库数据由于机器硬件故障而遭到破坏时,数据库管理系统提供了将数据库恢复到正确状态,并尽可能使数据不丢失的功能,这是数据库管理系统的______特性保证的。

可靠性

10.数据库中的数据是相互关联的数据集合,具有较小的数据冗余,可供多个用户共享,具有较高的数据独立性,且具有安全性和可靠性,这些特征都是由______保证的。数据库管理系统

第2章数据模型与数据库系统结构一.选择题

1.数据库三级模式结构的划分,有利于

A

A. 数据的独立性

B. 管理数据库文件

C. 建立数据库

D. 操作系统管理数据库

2.在数据库的三级模式中,描述数据库中全体数据的逻辑结构和特征的是

B

A.内模式 B.模式 C. 外模式 D. 其他

3.数据库系统中将数据分为三个模式,从而提供了数据的独立性,下列关于数据逻辑独立性的说法,正确的是 C

A. 当内模式发生变化时,模式可以不变

B. 当内模式发生变化时,应用程序可以不变

C. 当模式发生变化时,应用程序可以不变

D. 当模式发生变化时,内模式可以不变

4.为最大限度地保证数据库数据的正确性,关系数据库实现了三个完整性约束,下列用于保证实体完整性的是 B

A. 外码

B.主码

C. CHECK约束

D. UNIQUE约束

5.下列关于关系中主属性的描述,错误的是 D

A. 主码所包含的属性一定是主属性

B. 外码所引用的属性一定是主属性

C. 候选码所包含的属性都是主属性

D. 任何一个主属性都可以唯一地标识表中的一行数据

6.设有关系模式销售(顾客号,商品号,销售时间,销售数量),若允许一个顾客在不同时间对同一个产品购买多

次,则此关系模式的主码是 D

A.顾客号

B.产品号

C.(顾客号,商品号)

D.(顾客号、商品号、销售时间)

7.关系数据库用二维表来存储数据。下列关于关系表中记录的说法,正确的是 B

A.顺序很重要,不能交换 B.顺序不重要 C.按输入数据的顺序排列 D.一定是有序的8.下列模式中,用于描述单个用户数据视图的是 C

A.内模式 B.概念模式 C.外模式 D.存储模式

9.在利用概念层数据模型描述数据时,一般要求模型要满足三个要求。下列描述中,不属于概念层数据模型应满足的要求的是

A A.能够描述并发数据 B.能够真实地模拟现实世界

C.容易被业务人员理解 D.能够方便地在计算机上实现

10.数据模型三要素是指 B

A.数据结构、数据对象和数据共享

B.数据结构、数据操作和数据完整性约束

C.数据结构、数据操作和数据的安全控制

D.数据结构、数据操作和数据的可靠性

11.下列关于实体联系模型中联系的说法,错误的是 D A.一个联系可以只与一个实体有关 B.一个联系可以与两个实体有关 C.一个联系可以与多个实体有关

D.一个联系也可以不与任何实体有关

12.数据库系统中的三级模式以及模式间的映像提供了数据的独立性。下列关于两级映像的说法,正确的是

C

A.外模式到模式的映像是由应用程序实现的,模式到内模式的映像是由DBMS实现的 B.外模式到模式的映像是由DBMS实现的,模式到内模式的映像是由应用程序实现的 C.外模式到模式的映像以及模式到内模式的映像都是由DBMS实现的

D.外模式到模式的映像以及模式到内模式的映像都是由应用程序实现的

13.下列不属于数据完整性约束的是 D

A.实体完整性 B.参照完整性

C.域完整性 D.数据操作完整性

14.下列关于关系操作的说法,正确的是 A

A.关系操作是非过程化的

B.在进行关系操作时,用户需要知道数据的存储位置

C.在进行关系操作时,用户需要知道数据的存储结构

D.用户可以在关系上直接进行行定位操作

14.下列关于概念层数据模型的说法,错误的是 C

A.概念层数据模型应该采用易于用户理解的表达方式 B.概念层数据模型应该比较易于转换成组织层数据模型

C.在进行概念层数据模型设计时,需要考虑具体的DBMS的特点 D.在进行概念层数据模型设计时,重点考虑的内容是用户的业务逻辑

15.下列关于外码的说法,正确的是 C

A.外码必须与其所引用的主码同名 B.外码列不允许有空值

C.外码和所引用的主码名字可以不同,但语义必须相同 D.外码的取值必须要与所引用关系中主码的某个值相同

16.下列关于关系的说法,错误的是 D

A.关系中的每个属性都是不可再分的基本属性 B.关系中不允许出现值完全相同的元组 C.关系中不需要考虑元组的先后顺序

D.关系中属性顺序的不同,关系所表达的语义也不同

二.填空题

1.数据库可以最大限度地保证数据的正确性,这在数据库中被称为______。数据完整性 2.实体-联系模型主要包含______、______和______三部分内容。实体属性联系

.如果实体A与实体B是一对多联系,则实体B中的一个实例最多可对应实体A中的______实例。

一个

4.数据完整性约束包括______完整性、______完整性和______完整性。实体参照用户定义 5.关系数据模型的组织形式是______。二维表

6.数据库系统的______和______之间的映像,提供了数据的物理独立性。 7.数据的逻辑独立性是指当______变化时可以保持______不变。内模式模式

8.数据模型三要素包括______、______和______。数据结构数据操作数据完整性约束9.实体联系模型属于______层数据模型,它与具体的DBMS______。概念无关

10.关系操作的特点是基于______的操作。集合

11.当数据的物理存储位置发生变化时,通过调整______映像,可以保证______不变化,从而保证数据的物理独立性。模式/内模式模式

12.参照完整性约束是通过______保证的。外码

第3章 SQL语言基础及数据定义功能一.选择题

1.下列关于SQL语言特定的叙述,错误的是 B

A.使用SQL语言访问数据库,用户只需提出做什么,而无需描述如何实现 B.SQL语言比较复杂,因此在使用上比较难

C.SQL语言可以在数据库管理系统提供的应用程序中执行,也可以在DOS环境下执行 D.使用SQL语言可以完成任何数据库操作

2.下列所述功能中,不属于SQL语言功能的是 D A.数据库和表的定义功能 B.数据查询功能 C.数据增、删、改功能 D.提供方便的用户操作界面功能

3.设某职工表中有用于存放年龄(整数)的列,下列类型中最合适年龄列的是 C A.int B.smallint C.tinyint D.bit

4.SQL Server数据库是由文件组成的。下列关于数据库所包含的文件的说法,正确的

是 D A.一个数据库可包含多个主数据文件和多个日志文件 B.一个数据库只能包含一个主数据文件和一个日志文件

C.一个数据库可包含多个次要数据文件,但只能包含一个日志文件 D.一个数据库可包含多个次要数据文件和多个日志文件

5.在SQL Server中创建用户数据库,其主数据文件的大小必须大于 B A.master数据库的大小 B.model数据库的大小 C.msdb数据库的大小 D.3MB

6.在SQL Server系统数据库中,存放用户数据库公共信息的是 D A.master B.model C.msdb数据库的大小 D.tempdb

7.在SQL Server中创建用户数据库实际就是定义数据库所包含的文件以及文件的属性。下列不属于数据库文件属性的是 C A.初始大小 B.物理文件名 C.文件结构

D.最大大小

8.在SQL Server中创建用户数据库实际就是定义数据库所包含的文件以及文件的属性。下列不属于数据库文件属性的是 C

A.初始大小 B.物理文件名 C.文件结构 D.最大大小

9.下列约束中用于限制列的取值范围的约束是 B

A.PRIMARY KEY B.CHECK C.DEFAULT

D. UNIQUE

10.下列约束中用于限制列的取值不重的约束是 D

A.PRIMARY KEY

B.CHECK

C.DEFAULT

D. UNIQUE

11.下列约束中用于实现实体完整性的约束是 A A.PRIMARY KEY B.CHECK C.DEFAULT D. UNIQUE

12.下列关于DEFAULT约束的说法,错误的是 D A.一个DEFAULT约束只能约束表中的一个列 B.在一个表上可以定义多个DEFAULT约束 C.DEFAULT只能定义在列级完整性约束处

D.在列级完整性约束和表级完整性约束处都可以定义DEFAULT约束

第 4 章数据操作语句一.选择题

1.当关系R和S进行连接操作时,如果R中的元组不满足连接条件,在连接结果中也会将这些记录保留下来的操

作是 A A.左外连接 B.右外连接 C.内连接

D.自连接

2.设在某SELECT语句的WHERE子句中,需要对Grade列的空值进行处理。下列关于空值的操作,错误的是

C

A.Grade IS NOT NULL B.Grade IS NULL C.Grade = NULL

D.NOT (Grade IS NULL) 3.下列聚合函数中,不忽略空值的是

D

A.SUM(列名) B.MAX(列名)

C.A VG(列名)

D.COUNT(*) 4.SELECT … INTO …FROM语句的功能是

A

A.将查询结果插入到一个新表中

B.将查询结果插入到一个已建好的表中

C.合并查询的结果 D.向已存在的表中添加数据 5.下列利用SC表的查询语句中,错误的是

B

A. SELECT Sno, COUNT(*) FROM SC GROUP BY Sno

B. SELECT Sno FROM SC GROUP BY Sno WHERE COUNT(*) > 3 C. SELECT Sno FRO M SC GROUP BY Sno HA VING COUNT(*) > 3 D. SELECT Sno FROM SC GROUP BY Sno 6.现要利用Student表查询年龄最小的学生姓名和年龄。下列实现此功能的查询语句中,正确的是

D

A. SELECT Sname, MIN(Sage) FROM Student

B. SELECT Sname, Sage FROM Student WHERE Sage = MIN(Sage) C. SELECT TOP 1 Sna me, Sage FROM Student

D. SELECT TOP 1 Sname, Sage FROM Student ORDER BY Sage

7.设SC表中记录成绩的列为:Grade,类型为int。若在查询成绩时,希望将成绩按‘优’、‘良’、‘中’、‘及格’和‘不及格’形式显示,正确的Case函数是

C

A.

Case Grade

When 90~100 THEN '优' When 80~89 THEN '良' When 70~79 THEN '中' When 60~69 THEN '及格' Else '不及格' End B.

Case

When Grade between 90 and 100 THEN Grade = '优' When Grade between 80 and 89 THEN Grade = '良'

When Grade between 70 and 79 THEN Grade = '中' When Grade between 60 and 69 THEN Grade = '及格' Else Grade = '不及格' End C.

Case

When Grade between 90 and 100 THEN '优' When Grade between 80 and 89 THEN '良' When Grade between 70 and 79 THEN '中' When Grade between 60 and 69 THEN '及格' Else '不及格' End D.

Case Grade

When 90~100 THEN Grade = '优' When 80~89 THEN Grade = '良' When 70~79 THEN Grade = '中' When 60~69 THEN Grade = '及格' Else Grade = '不及格'

End

8.下述语句的功能是将两个查询结果合并为一个结果。其中正确的是 B

A.select sno,sname,sage from student where sdept = 'cs'

Order by sage Union

select sno,sname,sage from student where sdept = 'is' Order by sage

B.select sno,sname,sage from student where sdept = 'cs' Union

select sno,sname,sage from student where sdept = 'is' Order by sage

C.select sno,sname,sage from student where sdept = 'cs' Union

select sno,sname from student where sdept = 'is' Order by sage

D.select sno,sname,sage from student where sdept = 'cs' Order by sage Union

select sno,sname,sage from student where sdept = 'is' 9.下列SQL语句中,用于修改表数据的语句是

C

A.ALTER B.SELECT C.UPDATE

D.INSERT

10.设有Teachers表,该表的定义如下: CREATE TABLE Teachers(

Tno CHAR(8) PRIMARY KEY,

Tname V ARCHAR(10) NOT NULL,

Age TINYINT CHECK(Age BETWEEN 25 AND 65) )

下列插入语句中,不能正确执行的是

D

A.INSERT INTO Teachers V ALUES('T100','张鸿',NULL)

B.INSERT INTO Teachers(Tno,Tname,Age) V ALUES('T100','张鸿',30) C.INSERT INTO Teachers(Tno,Tname) VALUES('T100','张鸿') D.INSERT INTO TeachersV ALUES('T100','张鸿')

11.设数据库中已有表4-1至4-3所示的Student、Course和SC表。现要查询学生选的第2学期开设课程的情况,只需列出学号、姓名、所在系和所选的课程号。该查询涉及到的表是 D A.仅Student表

B.仅Student和SC表 C.仅Student和Course表

D.Student、SC和Course表

12.删除计算机系学生(在student表中)的修课记录(在SC表中)的正确的语句是表是 B A.DELETE FROM SC JOIN Student b ON S.Sno = b.Sno WHERE Sdept = '计算机系' B.DELETE FROM SC FROM SC JOIN Student b ON SC.Sno = b.Sno WHERE Sdept = '计算机系'

C.DELETE FROM Student WHERE Sdept = '计算机系' D.DELETE FROM SC WHERE Sdept = '计算机系'

二.填空题

1.在相关子查询中,子查询的执行次数是由_________决定的。外层表的行数

2.对包含基于集合测试子查询的查询语句,是先执行_________层查询,在执行_________层查询。内,外 3.对包含相关子查询的查询语句,是先执行_________层查询,在执行_________层查询。外,内 4.聚合函数COUNT(*)是按_________统计数据个数。行

5.设Grade列目前有三个值:90、80和NULL,则AVG(Grade)的值是_________,MIN(Grade)的值是_________。

85,80

6.设有学生表(学号,姓名,所在系)和选课表(学号,课程号,成绩),现要建立统计每个系的选课人数。请补

全下列语句: COUNT(DISTINCT 选课表.学号) SELECT 所在系, _________ FROM 选课表 JOIN 学生表 ON 选课表.学号 = 学生表.学号 GROUP BY 所在系

7.设有选课表(学号,课程号,成绩),现要查询考试成绩最高的三个学生的学号、课程号和成绩,包括并列情况。

请补全下列语句: TOP 3 WITH TIES, ORDER BY 成绩 DESC SELECT _________ 学号,课程号,成绩 FROM 选课表 _________

8. UNION操作用于合并多个查询语句的结果,如果在合并结果时不希望去掉重复的数据,则在用UNION操作时

应使用_________关键字。 ALL

9.进行自连接操作的两个表在物理上为一张表。通过_________方法可将物理上的一张表在逻辑上成为两张表。

起别名

10. FROM A LEFT JOIN B ON …语句表示在连接结果中不限制_________表数据必须满足连接条件。 A 11.对分组后的统计结果再进行筛选使用的子句是_________。HA VING 12.若SELECT语句中同时包含WHERE子句和GROUP子句,则先执行的是_________

子句。WHERE

三.简答题

1. 在聚合函数中,哪个函数在统计时不考虑NULL。

答:COUNT(*) 2. 在LIKE运算符中“%”的作用是什么?答:匹配0个或多个字符。

3. WHERE Age BETWEEN 20 AND 30子句,查找的Age范围是多少?答:Age大于等于20并且小于等于30

4.

WHERE Sdept NOT IN (‘CS’,’IS’,’MA’),查找的数据是什么?答:查找‘CS’,’IS’,’MA’三个系之外的其他系

5.

自连接与普通内连接的主要区别是什么?答:自连接中进行连接操作的表在物理上是一张表,而普通内连接进行连接的表在物理上是两张表。 6.

外连接与内连接的主要区别是什么?答:进行外连接的两个表中,可以有一张表不满足连接条件,而进行内连接的两个表必须都满足连接条件。

7.

在使用UNION合并多个查询语句的结果时,对各个查询语句的要求是什么?答:各个查询语句的列个数必须相同,对应列的语义相同,类型兼容。

8.

相关子查询与嵌套子查询在执行方面的主要区别是什么?答:相关子查询的执行过程是先外后内,而嵌套子查询的执行过程是先内后外。而且相关子查询中必须有与外层查询的关联,而嵌套子查询中,内、外层查询之间没有关联关系。

9.

执行SELECT … INOT 表名 FROM …语句时,对表名的要求是什么?答:必须是一个不存在的新表名。

10. 对统计结果的筛选应该使用哪个子句完成?答:使用HA VING子句

11. 在排序子句中,排序依据列的前后顺序是否重要?ORDER BY C1,C2子句对数据的排序顺序是什么?答:重要,系统会按列的先后顺序进行排序。

先按C1列进行排序,在C1列值相同时再按C2列进行排序。

12. TOP 子句的作用是什么?

答:在查询结果产生后,提取结果的前若干行数据。

四.上机练习

1.查询学生选课表中的全部数据。答:select * from SC

2.查询计算机系的学生的姓名、年龄。

答:select sname,sage from student where sdept = '计算机系'

3. 查询成绩在70~80分之间的学生的学号、课程号和成绩。

答:select sno,cno,grade from sc where grade between 70 and 80

4.查询计算机系年龄在18~20之间且性别为“男”的学生的姓名、年龄。答:select sname,sage from student

where sdept = '计算机系' and sage between 18 and 20 and ssex = '男'

5.查询“C001”号课程的最高分。

答:select max(grade) from sc where cno = 'C001'

6. 查询计算机系学生的最大年龄和最小年龄。

答:select max(sage) as max_age, min(sage) as min_age from student where sdept = '计算机系'

7. 统计每个系的学生人数。

答:select sdept,count(*) from student group by sdept

8. 统计每门课程的选课人数和考试最高分。

答:select cno, count(*),max(grade) from sc group by cno

9. 统计每个学生的选课门数和考试总成绩,并按选课门数升序显示结果。答:select sno,count(*), sum(grade) from sc group by sno

order by count(*) asc

10. 查询总成绩超过200分的学生,要求列出学号和总成绩。答:select sno,sum(grade) from sc group by sno

having sum(grade) > 200

11. 查询选课门数超过2门的学生的学号、平均成绩和选课门数。

答:select sno, avg(grade), count(*) from sc having count(*) > 2

12. 查询选了“C002”课程的学生的姓名和所在系。

答:select sname,sdept from student s join sc on s.sno = sc.sno where cno = 'C002'

13. 查询成绩80分以上的学生的姓名、课程号和成绩,并按成绩降序排列结果。

答:select sname,cno,grade from student s join sc on s.sno = sc.sno where grade > 80 order by gra de desc

14. 查询计算机系男生修了“数据库基础”的学生的姓名、性别和成绩。

答:select sname,ssex,grade from student s join sc on s.sno = sc.sno join course c on https://www.wendangku.net/doc/4817927894.html,o = https://www.wendangku.net/doc/4817927894.html, o

where sdept = '计算机系' and ssex = '男' and cname = '数据库基础'

15. 查询学生的选课情况,要求列出每位学生的选课情况(包括未选课的学生),并列出学生的学号、姓名、课程号

和考试成绩。

答:select s.sno,sname,cno,grade from student s

left join sc on s.sno = sc.sno

16. 查询哪些课程没有人选,要求列出课程号和课程名。

答:select https://www.wendangku.net/doc/4817927894.html,o,cname from course c left join sc on https://www.wendangku.net/doc/4817927894.html,o = https://www.wendangku.net/doc/4817927894.html,o

where https://www.wendangku.net/doc/4817927894.html,o is null

17.查询计算机系没有选课的学生,列出学生姓名。

答:select sname from student s left join sc on s.sno = sc.sno Where sdept = '计算机系' and sc.sno is null

18. 列出“数据库基础”课程考试成绩前三名的学生的学号、姓名、所在系和考试成绩。答:select top 3 s.sno, sname, sdept, grade from Student s join SC on s.Sno = SC.Sno join Cour se c on https://www.wendangku.net/doc/4817927894.html,o = https://www.wendangku.net/doc/4817927894.html,o where cname = '数据库基础' order by grade desc

19.查询VB考试成绩最低的学生的姓名、所在系和VB成绩。

答:select top 1 with ties sname,sdept,grade from student s join sc on s.sno = sc.sno join course

c on https://www.wendangku.net/doc/4817927894.html,o = https://www.wendangku.net/doc/4817927894.html,o where cname = 'VB' order by grade asc

20. 查询有考试成绩的所有学生的姓名、修课名称及考试成绩,要求将查询结果放在一张新的永久表中,假设新表名为new_sc。答:select sname, cname, grade into new_sc from student s join sc on s.sno = sc.sno join cours

e c on https://www.wendangku.net/doc/4817927894.html,o = https://www.wendangku.net/doc/4817927894.html,o where grade is not null

21. 分别查询信息管理系和计算机系的学生的姓名、性别、修课名称、修课成绩,并要求将这两个查询结果合并成

一个结果集,并以系名、姓名、性别、修课名称、修课成绩的顺序显示各列。

答:select sdept 系名, sname 姓名, ssex 性别, cname 修课名称, grade 修课成绩 from student s join sc on s.sno=sc.sno join course c on https://www.wendangku.net/doc/4817927894.html,o=https://www.wendangku.net/doc/4817927894.html,o where sdept = '信息管理系'

UNION

select sdept , sname, ssex, cname, grade from student s join sc on s.sno=sc.sno join course c on https://www.wendangku.net/doc/4817927894.html,o=https://www.wendangku.net/doc/4817927894.html,o where sdept = '计算机系'

22.查询选了VB的学生学号、姓名、所在系和成绩,并对所在系进行如下处理:

当所在系为“计算机系”时,显示“CS”;当所在系为“信息管理系”时,显示“IS”;当所在系为“通信工程系”时,显示“CO”;

对其他系,均显示“OTHER”。

答:select s.sno 学号,sname 姓名, case sdept when '计算机系' then 'CS' when '信息系' then 'IS' when '数学系' then 'CO' else 'OTHER'

end as 所在系,grade 成绩

from student s join sc on s.sno = sc.sno join course c on https://www.wendangku.net/doc/4817927894.html,o = https://www.wendangku.net/doc/4817927894.html,o where cname = 'vb'

23. 用子查询实现如下查询:

(1)查询选了“C001”课程的学生姓名和所在系。

答:select sname,sdept from student where sno in( select sno from sc where cno = ' C001') (2)查询通信工程系成绩80分以上的学生学号和姓名。答:select sno,sname from student where sno in( select sno from sc where grade > 80) and s dept = '通信工程系'

(3)查询计算机系考试成绩最高的学生姓名。

答:select sname from student s join sc on s.sno = sc.sno where sdept = '计算机系' and grade = (

select max(grade) from sc join student s on s.sno = sc.sno where sdept = '计算机系')

(4)查询年龄最大的男生的姓名和年龄。答:select sname,sage from student

Where sage = (select max(sage) from student and ssex = '男') and ssex = '男'

(5)查询“C001”课程的考试成绩高于“C001”课程的平均成绩的学生的学号和“C001”课程成绩。答:select sno,grade from sc where cno = ' C001'

And grade > (select avg(grade) from sc where cno = ' C001')

24. 创建一个新表,表名为test_t,其结构为:(COL1, COL 2, COL 3),其中:

COL1:整型,允许空值。

COL2:字符型,长度为10 ,不允许空值。 COL3:字符型,长度为10 ,允许空值。

试写出按行插入如下数据的语句(空白处表示空值)。

答:create table test_t (

COL1 int,

COL2 char(10) not null, COL3 char(10) )

insert into test_t values(NULL, 'B1', NULL)

insert into test_t values(1, 'B2', 'C2')

insert into test_t(COL1, COL2) values(2, 'B3')

25. 将“C001”课程的考试成绩加10分。

答:update sc set grade = grade + 10 where cno = 'C001'

26. 将计算机系所有选修了“计算机文化学”课程的学生成绩加10分,分别用子查询和多表连接形式实现。答:(1)子查询

update sc set grade = grade + 10 where sno in(

select sno from student where sdept = '计算机系') and cno in(

select cno from course where cname = '计算机文化学')

(2)多表连接

update sc set grade = grade + 10

from sc join student s on sc.sno = s.sno join course c on https://www.wendangku.net/doc/4817927894.html,o = https://www.wendangku.net/doc/4817927894.html,o

where sdept = '计算机系' and canem = '计算机文化学'

27. 删除修课成绩小于50分的学生的选课记录。答:delete from sc where grade < 50

28. 删除信息管理系考试成绩小于50分的学生的该门课程的修课纪录,分别用子查询和多表连接形式实现。答:

(1)用连接查询实现

delete from sc from sc join student s on s.sno=sc.sno where sdept = '信息管理系' and grade < 50

(2)用子查询实现

delete from sc where sno in (

select sno from student where sdept = '信息管理系' ) and grade < 50

29.删除VB考试成绩最低的学生的VB修课记录。

答:delete from sc

where grade = (

select min(grade) from sc

join course c on https://www.wendangku.net/doc/4817927894.html,o = https://www.wendangku.net/doc/4817927894.html,o where cname = 'vb') and cno in(

select cno from course where cname = 'vb')

第5章视图和索引一.选择题

1.下列关于视图的说法,正确的是 B

A.视图与基本表一样,也存储数据

B.对视图的操作最终都转换为对基本表的操作 C.视图的数据源只能是基本表

D.所有视图都可以实现对数据的增、删、改、查操作

2.在视图的定义语句中,只能包含 A

A.数据查询语句 B.数据增、删、改语句 C.创建表的语句

D.全部都可以

3.视图对应数据库三级模式中的_________。

A. 外模式

B. 内模式

C. 模式

D. 其他

4.下列关于通过视图更新数据的说法,错误的是 A

A.如果视图的定义涉及到多张表,则对这种视图一般情况下允许进行更新操作 B.如果定义视图的查询语句中含有GROUP BY子句,则对这种视图不允许进行更新操作 C.如果定义视图的查询语句中含有统计函数,则对这种视图不允许进行更新操作 D.如果视图数据来自单个基本表的行、列选择结果,则一般情况下允许进行更新操作 5.下列关于视图的说法,正确的是

B

A.通过视图可以提高数据查询效率

B.视图提供了数据的逻辑独立性 C.视图只能建立在基本表上

D.定义视图的语句可以包含数据更改语句 6.创建视图的主要作用是

D

A.提高数据查询效率 B.维护数据的完整性约束 C.维护数据的一致性 D.提供用户视角的数据

7.建立索引可以加快数据的查询效率。在数据库的三级模式结构中,索引属于 A A.内模式 B.模式 C.外模式

D.概念模式

8.设有学生表(学号,姓名,所在系)。下列建立统计每个系的学生人数的视图语句中,正确的是

D

A.CREATE VIEW v1 AS

SELECT 所在系, COUNT(*) FROM 学生表 GROUP BY 所在系 B.CREATE VIEW v1 AS SELECT 所在系, SUM(*) FROM 学生表 GROUP BY 所在系 C.CREATE VIEW v1(系名,人数) AS

SELECT 所在系, SUM(*) FROM 学生表 GROUP BY 所在系 D.CREATE VIEW v1(系名,人数) AS

SELECT 所在系, COUNT(*) FROM 学生表 GROUP BY 所在系

9.设用户在某数据库中经常需要进行如下查询操作:

A

SELECT * FROM T WHERE C1=’A’ ORDER BY C2

设T表中已在C1列上建立了主码约束,且该表只建有该约束。为提高该查询的执行效率,下列方法中可行的是

C

A.在C1列上建立一个聚集索引,在C2列上建立一个非聚集索引 B.在C1和C2列上分别建立一个非聚集索引 C.在C2列上建立一个非聚集索引

D.在C1和C2列上建立一个组合的非聚集索引 10.下列关于索引的说法,正确的是

C

A.只要建立了索引就可以加快数据的查询效率

B.当一个表上需要创建聚集和非聚集索引时,应该先创建非聚集索引,然后再创建聚集索引,这种顺序会使创建索引的效率比较高

C.在一个表上可以建立多个唯一的非聚集索引

D.索引会影响数据插入和更新数据的执行效率,但不会影响删除数据的执行效率

11.下列关于CREA TE UNIQUE INDEX IDX1 ON T(C1,C2)语句作用的说法,正确的是 D A.在C1和C2列上分别建立一个唯一聚集索引 B.在C1和C2列上分别建立一个唯一非聚集索引 C.在C1和C2列的组合上建立一个唯一聚集索引 D.在C1和C2列的组合上建立一个唯一非聚集索引

二.填空题

1.对视图的操作最终都转换为对_____操作。基本表

2.视图是虚表,在数据库中只存储视图的_____,不存储视图的数据。定义 3.修改视图定义的语句是_____。 ALTER VIEW 4.视图对应数据库三级模式中的_____模式。外5.在一个表上最多可以建立_____个聚集索引,可以建立_____个非聚集索引。一 ,多6.当在T表的C1列上建立聚集索引后,数据库管理系统会将T表数据按 _____ 列进行 _____。

C1 物理排序

7.索引建立的合适,可以加快数据_____操作的执行效率。查询

8.在employees表的phone列上建立一个非聚集索引的SQL语句是_____

CREATE INDEX IDX1 ON employees(phone)

或:CREATE NONCLUSTERED INDEX IDX1 ON employees(phone)

9.设有student表,结构为Student(Sno,Sname,Sdept)。现要在该表上建立一个统计每个系的学生人数的视图,视图名为V_dept,视图结构为(系名,人数)。请补全下列定义该视图的SQL语句 V_dept (系名,人数) , GROUP BY Sdept CREATE VIEW _____ AS

SELECT Sdept, COUNT(*) _____

10.非聚集索引的B-树中,叶级节点中每个索引行由索引键值和_____组成。行指示器三.简答题

1. 试说明使用视图的好处。

答:利用视图可以简化客户端的数据查询语句,使用户能从多角度看待同一数据,可以提高数据的安全性,视图对应数据库三级模式中的外模式,因此提供了一定程度的逻辑独立性。

2. 试说明哪类视图可实现更新数据的操作,哪类视图不可实现更新数据的操作。

答:一般只涉及到一张表的行列子集,且不含分组、统计计算等操作的视图是可更新数据的,其他情况一般都不能实现数据的更新操作。

3. 使用视图可以加快数据的查询速度,这句话对吗?为什么?

答:不对,因为通过视图查询数据时,比直接针对基本表查询数据多了一个转换过程,即从外模式到模式的转换。

4. 索引的作用是什么?

答:索引可以加快数据的查询效率。

5. 索引分为哪几种类型?分别是什么?它们的主要区别是什么

答:分为聚集索引和非聚集索引两种。聚集索引会对数据进行物理排序,非聚集索引不对数据进行物理排序。

6. 聚集索引一定是唯一性索引,对吗?反之呢?答:不对。反之也不对。

7. 在建立聚集索引时,数据库管理系统首先要将数据按聚集索引列进行物理排序。对

吗?答:对。

8. 在建立非聚集索引时,数据库管理系统并不对数据进行物理排序。对吗?答:对。

9. 不管对表进行什么类型的操作,在表上建立的索引越多越能提高操作效率。对吗? 10. 答:不对。

11. 适合建立索引的列是什么?答:适合建立索引的情况:

包含大量非重复值的列。

在WHERE子句中经常用于进行BETWEEN AND、>、>=、< 和 <=等操作的列。 经常被用作连接操作的列。

ORDER BY或GROUP BY子句中涉及的列。

四.上机练习

1.写出创建满足下述要求的视图的SQL语句,并执行这些语句。将所写语句保存到一个文件中。(1)查询学生的学号、姓名、所在系、课程号、课程名、课程学分。答:Create view v1 As

Select s.sno,sname,sdept,https://www.wendangku.net/doc/4817927894.html,o,cname,credit From student s join sc on s.sno = sc.sno Join co urse c on https://www.wendangku.net/doc/4817927894.html,o = https://www.wendangku.net/doc/4817927894.html,o

(2)查询学生的学号、姓名、选修的课程名和考试成绩。

答:Create view v2 As

Select s.sno,sname,cname,grade

From student s join sc on s.sno = sc.sno Join course c on https://www.wendangku.net/doc/4817927894.html,o = https://www.wendangku.net/doc/4817927894.html,o

(3)统计每个学生的选课门数,列出学生学号和选课门数。答:Create view v3 As

Select sno,count(*) as total From sc group by sno

(4)统计每个学生的修课总学分,列出学生学号和总学分(说明:考试成绩大于等于60才可获得此门课程的学

分)。

答:Create view v4 As

Select sno,sum(credit) as total_credit From sno join course c on https://www.wendangku.net/doc/4817927894.html,o = https://www.wendangku.net/doc/4817927894.html,o Where grade >= 60 Group by sno

2.利用第1题建立的视图,写出完成如下查询的SQL语句,并执行这些语句,查看执行结果。将查询语句和执行

结果保存到一个文件中。

(1)查询考试成绩大于等于90分的学生的姓名、课程名和成绩。答:Select sname,cname,grade From v2 where grade >= 90

(2)查询选课门数超过3门的学生的学号和选课门数。答:Select * from v3 where total >= 3 (3)查询计算机系选课门数超过3门的学生的姓名和选课门数。

答:Select sname,total from v3 join student s on s.sno = v3.sno Where sdept = ‘计算机系’ and total >= 3

(4)查询修课总学分超过10分的学生的学号、姓名、所在系和修课总学分。答:Select v4.sno,sname,sdept,total_credit From v4 join student s on s.sno = v4.sno Where tota l_credit >= 10

(5)查询年龄大于等于20岁的学生中,修课总学分超过10分的学生的姓名、年龄、所在系和修课总学分。答:Select sname,sage,sdept,total_credit From v4 join student s on s.sno = v4.sno Where sage

>= 20 and total_credit >= 10

3.修改第1题(4)定义的视图,使其查询每个学生的学号、总学分以及总的选课门数。答: Alter view v4 As

Select sno,sum(credit) as total_credit,count(*) as total_cno

From sc join course c on https://www.wendangku.net/doc/4817927894.html,o = https://www.wendangku.net/doc/4817927894.html,o Group by sno

4.写出实现下列操作的SQL语句,执行这些语句,并在SSMS工具中观察语句执行结果。(1)在Student表的Sdept列上建立一个按降序排序的非聚集索引,索引名为:Idx_Sdept。答:Create index Idx_Sdept on student(Sdept DESC)

(2)在Student表的Sname列上建立一个唯一的非聚集索引,索引名为:Idx_Sname。答:Create unique index Idx_Sname on student(Sname)

(3)在Course表上为Cname列建立一个非聚集索引,索引名为: Idx_Cname 答:Create index Idx_Cname on Course(Cname)

(4)在SC表上为Sno和Cno建立一个组合的非聚集索引,索引名为:Idx_SnoCno。答:Create index Idx_SnoCno on SC(Sno,Cno)

(5)删除在Sname列上建立的Idx_Sname索引。答:drop index Idx_Sname on Student

第6章关系数据理论

一.选择题

1.对关系模式进行规范化的主要目的是

B

A.提高数据操作效率 B.维护数据的一致性

C.加强数据的安全性 D.为用户提供更快捷的数据操作

2.关系模式中的插入异常是指

D

A.插入的数据违反了实体完整性约束 B.插入的数据违反了用户定义的完整性约束 C.插入了不该插入的数据 D.应该被插入的数据不能被插入

3.如果有函数依赖X→Y,并且对X的任意真子集X’,都有X’

Y,则称 C

A.X完全函数依赖于Y B.X部分函数依赖于Y C.Y完全函数依赖于X

D.Y部分函数依赖于X

4.如果有函数依赖X→Y,并且对X的某个真子集X’,有X’→Y成立,则称 B

A.Y完全函数依赖于X B.Y部分函数依赖于X C.X完全函数依赖于Y

D.X部分函数依赖于Y

5.若X→Y和Y→Z在关系模式R上成立,则X→Z在R上也成立。该推理规则称为 C A.自反规则 B.增广规则 C.传递规则

D.伪传递规则

6.若关系模式R中属性A仅出现在函数依赖的左部,则A为 A

A.L类属性 B.R类属性 C.N类属性

D.LR类属性

7.若关系模式R中属性A是N类属性,则A D

A.一定不包含在R任何候选码中 B.可能包含也可能不包含在R的候选码中 C.一定包含在R的某个候选码中 D.一定包含在R的任何候选码中

8.设F是某关系模式的极小函数依赖集。下列关于F的说法,错误的是

B

A.F中每个函数依赖的右部都必须是单个属性 B.F中每个函数依赖的左部都必须是单个属性 C.F中不能有冗余的函数依赖

D.F中每个函数依赖的左部不能有冗余属性

9.有关系模式:学生(学号,姓名,所在系,系主任),设一个系只有一个系主任,则该关系模式至少属于

B

A.第一范式 B.第二范式 C.第三范式

D.BC范式

10.设有关系模式R(X, Y, Z),其F={Y→Z, Y→X, X→YZ},则该关系模式至少属于

D

A.第一范式

B.第二范式

C.第三范式

D.BC范式

11.下列关于关系模式与范式的说法,错误的是

D A.任何一个只包含两个属性的关系模式一定属于3NF B.任何一个只包含两个属性的关系模式一定属于BCNF C.任何一个只包含两个属性的关系模式一定属于2NF D.任何一个只包含三个属性的关系模式一定

属于3NF

12.有关系模式:借书(书号,书名,库存量,读者号,借书日期,还书日期),设一个读者可以多次借阅同一本书,但对一种书(用书号唯一标识)不能同时借多本。该关系模式的主码是

A

A.(书号,读者号,借书日期) B.(书号,读者号) B.(书号) D.(读者号)

二.填空题

1.在关系模式R中,若属性A只出现在函数依赖的右部,则A是_____类属性。 R 2.若关系模式R∈2NF,则R中一定不存在非主属性对主码的_____函数依赖。部分 3.若关系模式R∈3NF,则R中一定不存在非主属性对主码的_____函数依赖。传递

4.设有关系模式X(S, SN, D)和Y(D, DN, M),X的主码是S,Y的主码是D,则D在关系模式X中被称为_____。外码

5.设有关系模式R(U, F),U={X, Y, Z, W},F={XY→Z, W→X},则(ZW)+ = _____,R的候选码为_____,该关系模式属于_____范式。XZW YW

第一

6.在关系模式R中,若属性A不在任何函数依赖中出现,则A是_____类属性。 N 7.在关系模式R中,若有X→Y,且Z Y,则X→Z在R上也成立,该推理规则为Armstrong 公理系统中的_____。分解规则

8.根据Armstrong公理系统中的自反规则,对关系模式R中的属性集X,若Y X,则一定有_____。X→Y 9.关系数据库中的关系表至少都满足_____范式要求。第一

10.关系规范化的过程是将关系模式从低范式规范化到高范式的过程,这个过程实际上是通过_____实现的。模式分解

11.若关系模式R的主码只包含一个属性,则R至少属于第_____范式。二

12.若关系模式R中所有的非主属性都完全函数依赖于主码,则R至少属于第_____范式。二

三.简答题

1.关系规范化中的操作异常有哪些?它是由什么引起的?解决的办法是什么? 2.第一范式、第二范式和第三范式关系模式的定义分别是什么? 3.什么是部分函数依赖?什么是传递函数依赖?请举例说明。

4.第三范式的关系模式是否一定不包含部分函数依赖关系?

5.设有关系模式R(A, B, C, D),F={D→A, D→B}

(1)求D+。

(2)求R的全部候选码。

答:(1)D+=DAB

(2)因为D是L类属性,因此D一定出现在R的任何候选码中;因为C是N类属性,因此D一定出现在R的任何候选码中; (CD)+

= CDAB = R的全部属性,因此R的唯一候选码是CD。

6.设有关系模式R(W, X, Y, Z),F={X→Z, WX→Y},该关系模式属于第几范式,请说明理由。解:R是1NF,R的候选码为WX,因此Y,Z是非主属性,又由于存在X→Z,因此F中存在非主属性对主码的部分函数依赖,因此R不是2NF。

7.设有关系模式R(A, B, C, D),F = {A→C, C→A, B→AC, D→AC}

(1)求B+,(AD)+。

(2)求R的全部候选码,判断R属于第几范式。

(3)求F的极小函数依赖集Fmin。

答:

(1) B+ = BAC

(AD)+ = ADC

(2)由于B、D是L类属性,因此B、D会在任何候选码中;

(BD)+ = BDAC = R的全部属性,因此R的候选码是BD。 R是第1范式,因为存在部分函数依赖:

(3)①将所有函数依赖的右边改为单个属性,得到:B→AC, D→AC

F1 = { A→C, C→A, B→A, B→C, D→A, D→C }

②去掉函数依赖左部的多余属性:该关系模式的全部函数依赖集左部均为一个属性,因此不存在左部有多余

属性的情况。③去掉多余的函数依赖。

去掉A→C,得到F2 = { C→A, B→A, B→C, D→A, D→C }

A+F2 = AC,包含C,因此为多余函数依赖,应去掉;

去掉C→A,得到F3 = { B→A, B→C, D→A, D→C }

C+F3 = C,不包含A,因此C→A不是多余函数依赖;

去掉B→A,得到F4 = { C→A, B→C, D→A, D→C }

B+F4 = BCA,包含A,因此B→A是多余函数依赖,应去掉;

去掉B→C,得到F5 = { C→A, D→A, D→C }

B+F5 = B,不包含C,因此B→C不是多余函数依赖;

去掉D→A,得到F6 = { C→A, B→C, D→C }

D+F5 = DCA,不包含A,因此D→A是多余函数依赖,应去掉;

去掉D→C,得到F7 = { C→A, B→C }

D+F5 = D,不包含C,因此D→C不是多余函数依赖。最终Fmin ={C→A, B→C, D →C}

四.设计题

1.设有关系模式:学生修课(学号,姓名,所在系,性别,课程号,课程名,学分,成绩)。设一个学生可以选多

门课程,一门课程可以被多名学生选。一个学生有唯一的所在系,每门课程有唯一的课程名和学分。每个学生对每门课程有唯一的成绩。(1)请指出此关系模式的候选码。(2)写出该关系模式的极小函数依赖集。

(3)该关系模式属于第几范式?并简单说明理由。

(4)若不是第三范式的,请将其规范化为第三范式关系模式,并指出分解后的每个关系模式的主码和外码。答:(1)候选码:(学号,课程号)

(2)学号→姓名,学号→所在系,学号→性别,课程号→课程名,课程号→学分,(学号,课程号)→成绩

(3)属于第二范式,因为存在部分函数依赖:

学号→姓名学号→班号,班号→班主任,因此存在传递函数依赖

(4)第三范式关系模式:

学生(学号,姓名,所在系,性别)课程(课程号,课程名,学分)

学生(学号,姓名,所在系,班号),班号为引用班的外码,所在系为引用系的外码。班(班号,班主任)系(系名,系主任)

2.设有关系模式:学生(学号,姓名,所在系,班号,班主任,系主任),其语义为:一个学生只在一个系的一个

班学习,一个系只有一个系主任,一个班只有一名班主任,一个系可以有多个班。(1)请指出此关系模式的候选码。(2)写出该关系模式的极小函数依赖集。

(3)该关系模式属于第几范式?并简单说明理由。

(4)若不是第三范式的,请将其规范化为第三范式关系模式,并指出分解后的每个关系模式的主码和外码。解:(1)候选码:学号

(2)学号→姓名,学号→所在系,学号→班号,班号→班主任,所在系→系主任(3)第二范式,因为有:学号→班号,班号→班主任,因此存在传递函数依赖:

学号

传递

班主任

(4)第三范式关系模式:

学生(学号,姓名,所在系,班号),班号为引用班的外码,所在系为引用系的外码。班(班号,班主任)系(系名,系主任)

3.设有关系模式:教师授课(课程号,课程名,学分,授课教师号,教师名,授课时数),其语义为:一门课程(由

课程号决定)有确定的课程名和学分,每名教师(由教师号决定)有确定的教师名,每门课程可以由多名教师讲授,每名教师也可以讲授多门课程,每名教师对每门课程有确定的授课时数。(1)指出此关系模式的候选码。(2)写出该关系模式的极小函数依赖集。(3)该关系模式属于第几范式?并简单说明理由

(4)若不属于第三范式,请将其规范化为第三范式关系模式,并指出分解后的每个关系模式的主码和外码。答:(1)候选码:(课程号,授课教师号)

(2)课程号→课程名,课程号→学分,授课教师号→教师名,(课程号,授课教师号)→授课时数(3)属于第一范式。因为有:课程号→课程名,因此存在部分函数依赖关系:

(课程号,授课教师号)P

课程名

(4)第三范式关系模式:

课程(课程号,课程名,学分)教师(教师号,教师名)

授课(课程号,教师号,授课时数),课程号为引用课程的外码,教师号为引用教师的外码。

第7章数据库设计一.选择题

1.在数据库设计中,将E-R图转换为关系数据模型是下述哪个阶段完成的工作 C

A.需求分析阶段 B.概念设计阶段 C.逻辑设计阶段

D.物理设计阶段

2.在进行数据库逻辑结构设计时,不属于逻辑设计应遵守的原则的是 D

A.尽可能避免插入异常 B.尽可能避免删除异常 C.尽可能避免数据冗余

D.尽可能避免多表连接操作

3. 在进行数据库逻辑结构设计时,判断设计是否合理的常用依据是 A

A.规范化理论 B.概念数据模型 C.数据字典

D.数据流图

4.在将E-R图转换为关系模型时,一般都将m:n联系转换成一个独立的关系模式。下列关于这种联系产生的关系模式的主码的说法,正确的是

C

A.只需包含m端关系模式的主码即可 B.只需包含n端关系模式的主码即可 C.至少包含m端和n端关系模式的主码 D.必须添加新的属性作为主码

5. 数据流图是从“数据”和“处理”两方面表达数据处理的一种图形化表示方法,该方法主要用在数据库设计的

数据库原理及应用教程第4版习题参考答案

习题参考答案 第1章习题参考答案 一、选择题 1. C 2. B 3. D 4. C 5. D 6. B 7. A 8. B 9. D 10. B 11. C 12. D 13. D 14. D 15. B 16. C 17. D 18. A 19. D 20. A 21. D 22. D 23. C 24. A 25. C 二、填空题 1. 数据库系统阶段 2. 关系 3. 物理独立性 4. 操作系统 5. 数据库管理系统(DBMS) 6. 一对多 7. 独立性 8. 完整性控制 9. 逻辑独立性 10. 关系模型 11. 概念结构(逻辑) 12. 树有向图二维表嵌套和递归 13. 宿主语言(或主语言) 14. 数据字典 15. 单用户结构主从式结构分布式结构客户/服务器结构浏览器/服务器结构 16. 现实世界信息世界计算机世界 三、简答题 1、简述数据库管理技术发展的三个阶段。各阶段的特点是什么? 答:数据库管理技术经历了人工管理阶段、文件系统阶段和数据库系统阶段。 (1)、人工管理数据的特点: A、数据不保存。 B、系统没有专用的软件对数据进行管理。 C、数据不共

享。D、数据不具有独立性。 (2)、文件系统阶段的特点: A、数据以文件的形式长期保存。 B、由文件系统管理数据。 C、程序与数据之间有一定的独立性。 D、文件的形式已经多样化 E、数据具有一定的共享性 (3)、数据库系统管理阶段特点: A、数据结构化。 B、数据共享性高、冗余度底。 C、数据独立性高。 D、有统一的数据控制功能。 2、从程序和数据之间的关系来分析文件系统和数据库系统之间的区别和联系 答:数据管理的规模日趋增大,数据量急剧增加,文件管理系统已不能适应要求,数据库管理技术为用户提供了更广泛的数据共享和更高的数据独立性,进一步减少了数据的余度,并为用户提供了方便的操作使用接口。数据库系统对数据的管理方式与文件管理系统不同,它把所有应用程序中使用的数据汇集起来,以记录为单位存储,在数据库管理系统的监督和管理下使用,因此数据库中的数据是集成的,每个用户享用其中的一部分。 3、简述数据库、数据库管理系统、数据库系统三个概念的含义和联系。答:数据库是指存储在计算机内、有组织的、可共享的数据集合。 数据库管理系统是软件系统的一个重要组成部分,它通过借助操作系统完成对硬件的访问,并对数据库的数据进行存取、维护和管理。 数据库系统是指计算机系统中引入数据库后的系统构成。它主要由数据库、数据库用户、计算机硬件系统和计算机软件系统几部分组成。 三者的联系是:数据库系统包括数据库和数据库管理系统。数据库系统主要通过数据库管理系统对数据库进行管理的。 4、数据库系统包括哪几个主要组成部分?各部分的功能是什么?画出整个数据库系统的层次结构图。 答:数据库系统包括:数据库、数据库用户、软件系统和硬件系统。 数据库主要是来保存数据的。 数据库用户是对数据库进行使用的人,主要对数据库进行存储、维护和检索等操作。 软件系统主要完成对数据库的资源管理、完成各种操作请求。 硬件系统主要完成数据库的一些物理上的操作,如物理存储、输入输出等。

数据库系统基础教程(第二版)课后习题答案

Database Systems: The Complete Book Solutions for Chapter 2 Solutions for Section 2.1 Exercise 2.1.1 The E/R Diagram. Exercise 2.1.8(a) The E/R Diagram Kobvxybz Solutions for Section 2.2 Exercise 2.2.1 The Addresses entity set is nothing but a single address, so we would prefer to make address an attribute of Customers. Were the bank to record several addresses for a customer, then it might make sense to have an Addresses entity set and make Lives-at a many-many relationship. The Acct-Sets entity set is useless. Each customer has a unique account set containing his or her accounts. However, relating customers directly to their accounts in a many-many relationship conveys the same information and eliminates the account-set concept altogether. Solutions for Section 2.3 Exercise 2.3.1(a) Keys ssNo and number are appropriate for Customers and Accounts, respectively. Also, we think it does not make sense for an account to be related to zero customers, so we should round the edge connecting Owns to Customers. It does not seem inappropriate to have a customer with 0 accounts;

(完整版)数据库原理及应用-期末考试试题

数据库原理及应用期末考试试题 1. 组织层数据模型的三要素是[ ]。 A.外模式,概念模式和内模式 B.关系模型,网络模型,层次模型 C.1:1的联系,1:n的联系,n:m的联系 D.数据结构,数据操作,数据约束条件 2在关系模型中,任何关系必须满足约束条件包括实体完整性、[ ]和用户自定义完整性。 A.动态完整性 B.数据完整性 C.参照完整性 D.结构完整性 3 SQL Server 中的角色是[ ]。 A. 一个服务器登录 B. 一个数据库用户 C. 一组权限的集合 D. 一个服务器用户 4.当数据的物理存储结构改变时,应用程序无需改变,这样的特性称为数据的[ ]。 A.逻辑独立性 B.物理独立性 C.程序无关性 D.物理无关性 5.下列哪个不是以处理大量数据为中心的应用程序的特点[ ]。 A.涉及的数据量大 B.数据需长期联机保存 C.数据的计算复杂 D.数据可被多个应用所共享 6.E-R图适用于建立数据库的[ ]。 A.概念模型 B.结构模型 C.逻辑模型 D.物理模型 7. 在关系数据库设计中,设计关系模型属于[ ]。 A.需求分析 B.物理结构设计 C.逻辑结构设计 D.概念结构设计 8.[ ]记录了对数据库中数据进行的每一次更新操作。 A.后援副本 B.日志文件 C.数据库 D.缓冲区 9. [ ]是用户定义的一组数据库操作序列,是一个基本的不可分割的工作单元。 A.程序 B.进程 C.事务 D.文件 10.信息世界中,实体是指[ ]。 A.客观存在的事物 B. 客观存在的属性 C. 客观存在的特性 D. 某一具体事件 11. 数据库系统中, DBA表示[ ] 。 A.应用程序设计者 B. 数据库使用者

2019年大学《数据库原理及应用教程》试题及答案

《数据库原理及应用教程》试题及答案 一、选择题 1、下面叙述正确的是(C) A. 算法的执行效率与数据的存储结构无关 B. 算法的空间复杂度是指算法程序中指令(或语句)的条数 C. 算法的有穷性是指算法必须能在执行有限个步骤之后终止 D. 以上三种描述都不对 (2) 以下数据结构中不属于线性数据结构的是(C) A. 队列 B. 线性表 C. 二叉树 D. 栈 (3) 在一棵二叉树上第5层的结点数最多是(B) 注:由公式2k-1得 A. 8 B. 16 C. 32 D. 15 (4) 下面描述中,符合结构化程序设计风格的是(A) A. 使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑 B. 模块只有一个入口,可以有多个出口 C. 注重提高程序的执行效率 D. 不使用goto语句 (5) 下面概念中,不属于面向对象方法的是(D) 注:P55-58 A. 对象 B. 继承 C. 类 D. 过程调用 (6) 在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是(B)

A. 可行性分析 B. 需求分析 C. 详细设计 D. 程序编码 (7) 在软件开发中,下面任务不属于设计阶段的是(D) A. 数据结构设计 B. 给出系统模块结构 C. 定义模块算法 D. 定义需求并建立系统模型 (8) 数据库系统的核心是(B) A. 数据模型 B. 数据库管理系统 C. 软件工具 D. 数据库 (9) 下列叙述中正确的是(C) A.数据库是一个独立的系统,不需要操作系统的支持 B.数据库设计是指设计数据库管理系统 C.数据库技术的根本目标是要解决数据共享的问题 D.数据库系统中,数据的物理结构必须与逻辑结构一致 (10) 下列模式中,能够给出数据库物理存储结构与物理存取方法的是(A) 注:P108 A. 内模式 B. 外模式 C. 概念模式 D. 逻辑模式 (11) 算法的时间复杂度是指(C) A. 执行算法程序所需要的时间 B. 算法程序的长度 C. 算法执行过程中所需要的基本运算次数 D. 算法程序中的指令条数 (12) 算法的空间复杂度是指(D)

南京理工大学《数据库系统基础教程》试题和答案

一、选择题60(选择一个最合适的答案,在答题纸上涂黑) 1.一个事务中的一组更新操作是一个整体,要么全部执行,要么全部不执行。这是事务的:A.原子性B.一致性 C.隔离性 D.持久性 2.在数据库的三级模式结构中,描述一个数据库中全体数据的全局逻辑结构和特性的是:A.外模式 B.模式 C.存储模式D.模式 3.关于联系的多重性,下面哪种说法不正确? A.一个多对多的联系中允许多对一的情形。 B.一个多对多的联系中允许一对一的情形。 C.一个多对一的联系中允许一对一的情形。 D.一个多对一的联系中允许多对多的情形。 4.考虑学校里的"学生"和"课程"之间的联系,该联系的多重性应该是: A. 一对一 B. 多对一 C. 一对多 D. 多对多 5.下面哪种约束要求一组属性在同一实体集任意两个不同实体上的取值不同。 A. 键(key)约束。 B. 单值约束。 C. 参照完整性。 D. 域(domain)约束 6.关系模型要求各元组的每个分量的值必须是原子性的。对原子性,下面哪种解释不正确:A.每个属性都没有部结构。 B.每个属性都不可再分解。 C.各属性值应属于某种基本数据类型。 D.属性值不允许为NULL。 7.对于一个关系的属性(列)集合和元组(行)集合,下面哪种说法不正确: A.改变属性的排列次序不影响该关系。 B.改变元组的排列次序不影响该关系。 C.改变元组的排列次序会改变该关系。 D.关系的模式包括其名称及其属性集合。 8.若R是实体集R1与R2间的一个多对多联系,将其转换为关系R',哪种说法不正确:A.R'属性应包括R1与R2的所有属性。 B.R'属性应包括R1与R2的键属性。 C.R1与R2的键属性共同构成R'的键。 D.R'的属性应包括R自身定义的属性。 9.关于函数依赖的判断,下面哪种说法不正确? A.若任意两元组在属性A上一致,在B上也一致,则有A → B成立。 B.若任意两元组在属性A上一致,在B上不一致,则A → B不成立。 C.若任意两元组在属性A上不可能一致,则不管在B上是否一致,有A → B成立。

数据库原理与应用教程期末测试题

数据库原理与应用教程 期末测试题(一) 一、填空题(每空1分,共10分) 1.数据库系统的核心是___数据库管理系统__。 2.在关系模型中,实体以及实体间的联系都是用__关系(二维表)____来表示的。3.设关系模型R(A,B,C),F是R上的函数依赖集,F={A→B,C→B},则R的候选码为__(A,C)_______。 4.层次模型用“树结构”来表示数据之间的联系,网状模型用“___图状结构______” 来表示数据之间的联系。 5.SQL Server2005中,一个简单的数据库可以只有一个___数据______文件和一个日志文件。6.聚集索引和非聚集索引的存储结构都采用___B树____索引结构。 7.一个事务必须具有的四个属性是原子性、一致性、__隔离性__和持久性。 1、8.在T-SQL中,查询表中数据时,可用_____DISTINCT______关键字滤掉重复行。9.调用标量函数时必须提供至少由两部分组成的名称,即___拥有者_____. 函数名。10.DML 触发器是当数据库服务器中发生数据操作语言事件时会自动执行的存储过程。 二、选择题(每小题1分,共20分) 1、数据管理的发展不包括下面哪个阶段() (A)文件系统(B)数据库系统 (C)人工管理(D)统一管理 2、一个学生可以同时借阅多本书,一本书只能由一个学生借阅,学生和图书之间是什 么样的联系() (A)一对一(B)一对多 (C)多对多(D)以上全不是 3、如果事务1将数据库中的A值从200改为300,事务2读A值为300,事务1又将 刚才的操作撤销,A值恢复为200,那么事务2读取了“脏”数据。这种情况 是由于数据库保护中的那方面不当而引起的() (A)并发控制 (B)完整性约束 (C)安全性控制(D)数据库的恢复 4、在关系模型中,“元组”是指( B ) (A)表中的一行(B)表中的一列 (C)表中的一个数据(D)表中的一个成分 5、有学生、选修和课程三个关系,学生S(学号,姓名,性别….),课程C(课程号,

数据库原理及应用(第2版)习题参考答案..

第1章数据概述 一.选择题 1.下列关于数据库管理系统的说法,错误的是C A.数据库管理系统与操作系统有关,操作系统的类型决定了能够运行的数据库管理系统的类型 B.数据库管理系统对数据库文件的访问必须经过操作系统实现才能实现 C.数据库应用程序可以不经过数据库管理系统而直接读取数据库文件 D.数据库管理系统对用户隐藏了数据库文件的存放位置和文件名 2.下列关于用文件管理数据的说法,错误的是D A.用文件管理数据,难以提供应用程序对数据的独立性 B.当存储数据的文件名发生变化时,必须修改访问数据文件的应用程序 C.用文件存储数据的方式难以实现数据访问的安全控制 D.将相关的数据存储在一个文件中,有利于用户对数据进行分类,因此也可以加快用户操作数据的效率 3.下列说法中,不属于数据库管理系统特征的是C A.提供了应用程序和数据的独立性 B.所有的数据作为一个整体考虑,因此是相互关联的数据的集合 C.用户访问数据时,需要知道存储数据的文件的物理信息 D.能够保证数据库数据的可靠性,即使在存储数据的硬盘出现故障时,也能防止数据丢失 5.在数据库系统中,数据库管理系统和操作系统之间的关系是D A.相互调用 B.数据库管理系统调用操作系统 C.操作系统调用数据库管理系统 D.并发运行 6.数据库系统的物理独立性是指D A.不会因为数据的变化而影响应用程序 B.不会因为数据存储结构的变化而影响应用程序 C.不会因为数据存储策略的变化而影响数据的存储结构 D.不会因为数据逻辑结构的变化而影响应用程序 7.数据库管理系统是数据库系统的核心,它负责有效地组织、存储和管理数据,它位于用户和操作系统之间,属于A A.系统软件B.工具软件 C.应用软件D.数据软件 8.数据库系统是由若干部分组成的。下列不属于数据库系统组成部分的是B A.数据库B.操作系统 C.应用程序D.数据库管理系统 9.下列关于客户/服务器结构和文件服务器结构的描述,错误的是D A.客户/服务器结构将数据库存储在服务器端,文件服务器结构将数据存储在客户端 B.客户/服务器结构返回给客户端的是处理后的结果数据,文件服务器结构返回给客户端的是包含客户所需数据的文件 C.客户/服务器结构比文件服务器结构的网络开销小 D.客户/服务器结构可以提供数据共享功能,而用文件服务器结构存储的数据不能共享

华南师范大学《数据库原理》期末考试复习题

一、单选题 1 ( )将访问许可权分配给一定的角色,用户通过饰演不同的角色获得角色所拥有的访问许可权. A、强制存取控制 B、自主存取控制 C、视图机制 D、基于角色的访问控制 答案:D 2 SQL的默认策略是任何与( )约束相违背的更新均为系统拒绝. A、用户定义的完整性 B、实体完整性 C、参照完整性 D、用户定义的完整性和参照完整性 答案:C 3 用户标识与系统鉴别属于( )技术. A、访问控制 B、接入控制 C、完整性约束 D、恢复 答案:A 4 ( )是相互矛盾的,数据库物理设计过程中需要对它们进行折中权衡. A、时间效率,维护代价 B、时间效率,空间效率 C、时间效率,空间效率,维护代价 D、空间效率,维护代价 答案:C 5 在关系演算中,元组变量的变化围是( ). A、某一命名的关系 B、数据库中的所有关系 C、某一个域 D、数据库中的所有域 答案:C 6 下列聚合函数中不忽略空值(null) 的是() A、SUM (列名) B、MAX (列名) C、COUNT ( * ) D、AVG (列名) 答案:C 7 SQL中,下列涉及空值的操作,不正确的是()

B、AGE IS NOT NULL C、AGE = NULL D、NOT (AGE IS NULL) 答案:C 8 SQL的全局约束是指基于元组的检查子句和() A、非空值约束 B、域约束子句 C、断言 D、外键子句 答案:C 9要保证数据库逻辑数据独立性,需要修改的是( ) A、模式 B、模式与模式的映射 C、模式与外模式的映射 D、模式 答案:C 10 ( )是关系代数的基本运算之一. A、交 B、除 C、关系模型 D、广义笛卡儿积 答案:D 11 设关系R有M个元组,关系S有N个元组,则关系R和S的笛卡尔积有( )个元组. A、M B、N C、M*N D、M+N 答案:C 12 单个用户使用的数据视图的描述称为() A、外模式 B、概念模式 C、模式 D、存储模式 答案:A 13 判断对并发事务正确的调度是( ). A、并发事务的执行结果与并行化执行结果事务是否一致 B、事务间无冲突 C、并发事务的执行结果与串行化执行结果事务是否一致

数据库原理及应用--课后答案

数据库原理及应用 课后答案 第一章 选择题 1、A。 从数据库管理系统的角度看,数据库系统的结构通常分为三级模式的总体结构,在这种模式下,形成了二级映像,实现了数据的独立性。其中三级模式结构指的是外模式、模式和内模式,二级映像指的是外模式/模式映像、模式/内模式映像。对于外模式/模式映像,当模式改变时,相应的外模式/模式映像作相应的改变,以使外模式保持不变,而应用程序是依据数据的外模式来编写的,外模式不变,应用程序就没必要修改,这保证了数据与程序的逻辑独立性。对于模式/内模式映像,当数据库的存储结构变了,模式/内模式映像会作相应的改变,以使模式保持不变,而模式不变,与模式没有直接联系的应用程序也不会改变,这保证了数据与程序的物理独立性。 数据逻辑独立性指的就是当模式改变时,外模式和应用程序不需要改变,所以选项A正确。C选项的内模式改变,模式不变指的是数据的物理独立性,所以C选项不正确,B选项中前后两句与C选项相比顺序不符,所以B选项不正确。D选项中,应为“模式和应用程序不变”,不应为“外模式”,所以D选项不正确。 2、B。 DB指的是数据库(DataBase),DBMS指的是数据库管理系统(DataBase Management System),DBS指的是数据库系统(DataBase System),DBA指的是数据库管理员(Database Administrator),Data指的是数据。

由书中概念易得DBS(数据库系统)包括DBMS(数据库管理系统),DBMS管理和控制DB(数据库),而DB载入、存储、重组与恢复Data(数据)。所以B选项正确。 3、C。 数据库系统的特点有:⑴、实现数据共享;⑵、减少数据冗余度;⑶、保持数据的一致性; ⑷、数据的独立性;⑸、安全保密性;⑹、并发控制;⑺、故障恢复 由以上可得C选项错误,应改为数据冗余度“低”。 4、C。 DB是长期储存在计算机内、有组织的、可共享的大量数据集合;DBS是实现有组织地、动态地存储大量关联数据,方便多用户访问计算机软件、硬件和数据资源组成的系统;DBMS 是把用户对数据的操作转化为对系统存储文件的操作,有效地实现数据库三级(外模式、模式和内模式)之间的转化;MIS指的是管理信息系统(Management Information System),是一个以人为主导,利用计算机硬件、软件及其他办公设备进行信息的收集、传递、存贮、加工、维护和使用的系统。由以上概念可知,位于用户和数据库之间的一层数据管理软件是DBMS。所以C选项正确。 5、C。 书中图1.6明确指出模式/内模式映像把概念数据库与物理数据库联系起来,所以C选项正确。 6、C。 数据库有这样三层关系,第一层和第三层不能直接发生关系,所以D选项不正确,内模式与外模式没有直接关系,应改为“模式与应用程序不变”。

数据库系统基础教程(第二版)课后习题答案2

Database Systems: The Complete Book Solutions for Chapter 2 Solutions for Section 2.1 Exercise 2.1.1 The E/R Diagram. Exercise 2.1.8(a) The E/R Diagram Kobvxybz Solutions for Section 2.2 Exercise 2.2.1 The Addresses entity set is nothing but a single address, so we would prefer to make address an attribute of Customers. Were the bank to record several addresses for a customer, then it might make sense to have an Addresses entity set and make Lives-at a many-many relationship. The Acct-Sets entity set is useless. Each customer has a unique account set containing his or her accounts. However, relating customers directly to their accounts in a many-many relationship conveys the same information and eliminates the account-set concept altogether. Solutions for Section 2.3 Exercise 2.3.1(a) Keys ssNo and number are appropriate for Customers and Accounts, respectively. Also, we think it does not make sense for an account to be related to zero customers, so we should round the edge connecting Owns to Customers. It does not seem inappropriate to have a customer with 0 accounts;

数据库原理及应用期末考试..

综合题 一、 1.使用Transact—SQL语言创建教学管理数据库,创建两个表学生信息(学号,姓名,性别,籍贯,班级编号)和成绩表(学号,课程编号,成绩,是否重修)。其中,学生信息表中学号为主键,其他信息都不允许为空。通过学号与成绩表形成一个一对多的关系,成绩表中的成绩的默认值为0,但必须在0~100之间。注:将学号设置为主键,主键名为pk_xh; 为成绩添加默认值约束,约束名为df_xb,其值为“0”; 为成绩添加check约束,约束名为诚恳ck_xb, 在0~100之间。 CREATE DATABASE 教学管理 use 教学管理 go create table 学生信息( 学号 varchar(20) NOT NULL PRIMARY KEY, 姓名 varchar(20) NOT NULL , 性别 varchar(10) NOT NULL, 籍贯 varchar(20) NOT NULL, 班级编号 varchar(20) NOT NULL ) go create table 成绩表 ( 学号 varchar(20) NOT NULL FOREIGN KEY REFERENCES 学生信息(学号), 课程编号 varchar(20) NOT NULL, 成绩 numeric(5,2) DEFAULT (0) CHECK(成绩)=0 and 成绩<=100) , 是否重修 varchar(8) NOT NULL ) go 2.写出实现各查询功能的SELECT语句。 (1)统计班级编号为1002的学生人数。 (2)查询课程编号为“003”的课程成绩高于该门课程平均分的学生信息。(3)在“学生信息”表中找出姓“王”的学生信息。 (4)将“成绩”表中的课程编号为“001”的成绩增加10分。 (5)列出每个同学的学号、姓名及选修课程的平均成绩情况,没有选修的同学也列出。 3.创建一个名为stud_view2的视图,该视图可以用来查看每个学生的选修课程

数据库原理及应用

数据库原理及应用 数据库技术简介 数据库技术产生于六十年代末,是数据管理的最新技术,是计算机科学的重要分支。 数据库技术是信息系统的核心和基础,它的出现极大地促进了计算机应用向各行各业的渗透。 数据库的建设规模、数据库信息量的大小和使用频度已成为衡量一个国家信息化程度的重要标志。 第一章绪论 1.1 数据库系统概述 1.1.1 四个基本概念 数据(Data) 数据库(Database)数据库管理系统(DBMS) 数据库系统(DBS) 一、数据 数据(Data)的定义 数据是信息的具体表现形式 描述事物的符号记录 数据的表现形式——数字文字图形图像声音等 各类数据必须数字化后才能加工处理。 数据与其语义是不可分的 例如:93是一个数据 语义1:学生某门课的成绩 语义2:某人的体重 语义3:计算机系2007级学生人数 例如:学生档案中的一条记录:(李明男1982 江苏计算机系2000) 二、数据库(续) 数据库的定义 数据库(Database,简称DB)是长期储存在计算机内、有组织的、可共享的大量数据的集合。 三、数据库管理系统 什么是DBMS 数据库管理系统(Database Management System,简称DBMS)是位于用户与操作系统之间的一层数据管理软件。 DBMS的用途 组织和存储好大量的数据,并提供方便、高效地检索数据和维护数据的手段。 DBMS的主要功能: 数据定义功能 数据组织 存储和管理 数据操纵功能 数据库的事务管理和运行管理 数据库的建立和维护功能 其它功能 四、数据库系统 什么是数据库系统

数据库系统(Database System,简称DBS)是指在计算机系统中引入数据库后的系统。 数据库系统的构成 数据库 数据库管理系统(及其开发工具) 应用系统 数据库管理员(DBA) 1.1.2 数据管理技术的产生和发展 数据管理:是指对数据的分类、组织、编码、存储、查询和维护等活动,是数据处理的中心环节。 数据处理:是指对数据进行收集、组织、存储、加工、抽取和传播等一系列活动的总和。其目的是从大量的、原始数据中抽取、推导出对人们有价值的信息。 数据管理技术的发展动力:应用需求的推动、计算机软/硬件的发展 数据管理技术的发展过程 人工管理阶段(40年代中--50年代中) 文件系统阶段(50年代末--60年代中) 数据库系统阶段(60年代末--现在) 一、人工管理 时期 40年代中--50年代中 产生的背景 应用需求科学计算 硬件水平纸带、卡片、磁带 软件水平没有操作系统 处理方式批处理 特点:数据不保存、数据由程序各自管理(逻辑结构、存储结构、存取方法、输入方式等) 数据不共享:一组数据只能对应一个程序 数据不具独立性:数据的结构发生变化后(物理或逻辑上),应用程序必须做相应的修改。 应用程序与数据的对应关系(人工管理阶段) .. 二、文件系统 时期

数据库原理与应用期末复习总结含试题及其答案

数据库原理综合习题答案 1.1名词解释 (1) DB:即数据库(Database),是统一管理的相关数据的集合。DB能为各种用户共享,具有最小冗余度,数据间联系密切,而又有较高的数据独立性。 (2) DBMS:即数据库管理系统(Database Management System),是位于用户与操作系统之间的一层数据管理软件,为用户或应用程序提供访问DB的方法,包括DB的建立、查询、更新及各种数据控制。DBMS总是基于某种数据模型,可以分为层次型、网状型、关系型、面向对象型DBMS。 (3) DBS:即数据库系统(Database System),是实现有组织地、动态地存储大量关联数据,方便多用户访问的计算机软件、硬件和数据资源组成的系统,即采用了数据库技术的计算机系统。 (4) 1:1联系:如果实体集E1中的每个实体最多只能和实体集E2中的一个实体有联系,反之亦然,那么实体集E1对E2的联系称为“一对一联系”,记为“1:1”。 (5) 1:N联系:如果实体集E1中每个实体与实体集E2中任意个(零个或多个)实体有联系,而E2中每个实体至多和E1中的一个实体有联系,那么E1对E2的联系是“一对多联系”,记为“1:N”。 (6) M:N联系:如果实体集E1中每个实体与实体集E2中任意个(零个或多个)实体有联系,反之亦然,那么E1对E2的联系是“多对多联系”,记为“M:N”。 (7) 数据模型:模型是对现实世界的抽象。在数据库技术中,表示实体类型及实体类型间联系的模型称为“数据模型”。它可分为两种类型:概念数据模型和结构数据模型。 (6) 概念数据模型:是独门于计算机系统的模型,完全不涉及信息在系统中的表示,只是用来描述某个特定组织所关心的信息结构。 (9) 结构数据模型:是直接面向数据库的逻辑结构,是现实世界的第二层抽象。这类模型涉及到计算机系统和数据库管理系统,所以称为“结构数据模型”。结构数据模型应包含:数据结构、数据操作、数据完整性约束三部分。它主要有:层次、网状、关系三种模型。 (10) 层次模型:用树型结构表示实体类型及实体间联系的数据模型。 (11) 网状模型:用有向图结构表示实体类型及实体间联系的数据模型。 (12) 关系模型:是目前最流行的数据库模型。其主要特征是用二维表格结构表达实体集,用外鍵表示实体间联系。关系模型是由若干个关系模式组成的集合。 (13) 概念模式:是数据库中全部数据的整体逻辑结构的描述。它由若干个概念记录类型组成。概念模式不仅要描述概念记录类型,还要描述记录间的联系、操作、数据的完整性、安全性等要求。 (14) 外模式:是用户与数据库系统的接口,是用户用到的那部分数据的描述。 (15) 内模式:是数据库在物理存储方面的描述,定义所有的内部记录类型、索引和文件的组成方式,以及数据控制方面的细节。 (16) 模式/内模式映象:这个映象存在于概念级和内部级之间,用于定义概念模式和内模式间的对应性,即概念记录和内部记录间的对应性。此映象一般在内模式中描述。 (17) 外模式/模式映象:这人映象存在于外部级和概念级之间,用于定义外模式和概念模式间的对应性,即外部记录和内部记录间的对应性。此映象都是在外模式中描述。 (18) 数据独立性:在数据库技术中,数据独立性是指应用程序和数据之间相互独立,不受影响。数据独立性分成物理数据独立性和逻辑数据独立性两级。 (19) 物理数据独立性:如果数据库的内模式要进行修改,即数据库的存储设备和存储方法有所变化,那么模式/内模式映象也要进行相应的修改,使概念模式尽可能保持不变。也就是对模式的修改尽量不影响概念模式。

数据库系统基础教程课后答案第五章

Exercise 5.1.1 As a set: Average = 2.37 As a bag: Average = 2.48 Exercise 5.1.2 As a set:

Average = 218 As a bag: Average = 215 Exercise 5.1.3a As a set:

As a bag: Exercise 5.1.3b πbore(Ships Classes) Exercise 5.1.4a For bags: On the left-hand side: Given bags R and S where a tuple t appears n and m times respectively, the union of bags R and S will have tuple t appear n + m times. The further union of bag T with the tuple t appearing o times will have tuple t appear n + m + o times in the final result. On the right-hand side: Given bags S and T where a tuple t appears m and o times respectively, the union of bags R and S will have tuple t appear m + o times. The further union of bag R with the tuple t appearing n times will have tuple t appear m + o + n times in the final result. For sets: This is a similar case when dealing with bags except the tuple t can only appear at most once in each set. The tuple t only appears in the result if all the sets have the tuple t. Otherwise, the tuple t will not appear in the result. Since we cannot have duplicates, the result only has at most one copy of the tuple t. Exercise 5.1.4b For bags: On the left-hand side:

数据库原理及应用期末复习

. 数据库原理及应用期末复习 第一章绪论 1、数据(Data): 数据是数据库中存储的基本对象; 数据的定义:描述事物的符号记录; 数据的种类:文本、图形、图像、音频、视频、学生的档案记录、货物的运输情况等; 数据的含义称为数据的语义,数据与其语义是不可分的。 2、数据库(Database,简称DB): 定义:数据库是长期储存在计算机内、有组织的、可共享的大量数据的集合。 数据库的基本特征: 1) 数据按一定的数据模型组织、描述和储存; 2) 可为各种用户共享、易扩展、冗余度较小; 3) 数据独立性较高。 数据库具有永久存储、有组织和可共享三个基本特点。 3、数据库管理系统(DBMS): 数据库管理系统是位于用户与操作系统之间的一层数据管理软件。 主要功能: 1) 数据定义功能; 2) 数据组织、存储和管理; 3) 数据操纵功能; 4) 数据库的事务管理和运行管理; 5) 数据库的建立和维护功能; 6) 其他功能。 4、数据库系统(DBS): 定义:数据库系统是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员系统构成。 5、数据库技术的产生和发展: 三个阶段:人工管理阶段、文件系统、数据库系统。 6、数据库系统的特点: 1) 数据结构化:不仅数据内部结构化,整体也是结构化的; 2) 数据的共享性高,冗余度低,易扩充; 3) 数据独立性高(物理逻辑性和逻辑独立性); 物理独立性:指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的。当数据的物理存储改变了,应用程序不用改变。精选文档. . 逻辑独立性:指用户的应用程序与数据库的逻辑结构是相互独立的。数据的逻辑结构改变了,用户程序也可以不变。数据独立性是由DBMS的二级映像功能来保证的 4) 数据由DBMS统一管理和控制。 7、数据模型: (1)数据模型是数据库系统的核心和基础; (2)两类数据模型:

(完整版)数据库原理及应用习题带答案

习题一、单项选择题 1. 在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。在这几 个阶段中,数据独立性最高的是(A)阶段。 A. 数据库系统 B. 文件系统 C. 人工管理 D.数据项管理 2. 数据库系统与文件系统的主要区别是(B)。 A. 数据库系统复杂,而文件系统简单 B. 文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决 C. 文件系统只能管理程序文件,而数据库系统能够管理各种类型的文件 D. 文件系统管理的数据量较少,而数据库系统可以管理庞大的数据量 3. 在数据库中存储的是(C)。 A. 数据 B. 数据模型 C. 数据及数据之间的联系 D. 信息 4. 数据库的特点之一是数据的共享,严格地讲,这里的数据共享是指(D)。 A. 同一个应用中的多个程序共享一个数据集合 B. 多个用户、同一种语言共享数据 C. 多个用户共享一个数据文件 D. 多种应用、多种语言、多个用户相互覆盖地使用数据集合 5. 数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)三者之间的关系是( A )。 A. DBS包括DB和DBMS B. DBMS包括DB和DBS C. DB包括DBS和DBMS D. DBS就是DB,也就是DBMS 6. 数据库管理系统(DBMS)是(C)。 A. 一个完整的数据库应用系统 B.一组硬件 C. 一组系统软件 D.既有硬件,也有软件 7. 数据库是在计算机系统中按照一定的数据模型组织、存储和应用的(B)。 A. 文件的集合 B. 数据的集合 C. 命令的集合 D. 程序的集合 8. 支持数据库各种操作的软件系统是(B)。 A. 命令系统 B. 数据库管理系统 C. 数据库系统 D. 操作系统 9. 由计算机硬件、DBMS、数据库、应用程序及用户等组成的一个整体叫(B)。 A. 文件系统 B. 数据库系统 C. 软件系统 D. 数据库管理系统 10. 数据库系统中应用程序与数据库的接口是(B)。 A. 数据库集合 B. 数据库管理系统DBMS C. 操作系统OS D. 计算机中的存储介质 11. 在DBS中,DBMS和OS之间关系是(D)。 A. 并发运行 B. 相互调用 C. OS调用DBMS D. DBMS调用OS 12. 在数据库方式下,信息处理中占据中心位置的是(C)。 A. 磁盘 B. 程序 C. 数据 D. 内存 13. 文件系统与数据库系统对数据处理方式的主要区别体现在(A)。 A. 数据集成化 B. 数据共享 C. 冗余度 D. 容量 14. DBMS通常可以向下述哪个对象申请所需计算机资源(B)。 A. 数据库 B. 操作系统 C. 计算机硬件 D. 应用程序

数据库原理及应用

数据库原理及应用 1:ER图是表示概念模型的有效工具之一,在ER图中的菱形框表示 1.联系 2.实体 3.实体的属性 4.联系的属性 2:()完成对数据库数据的查询与更新 1.DCL 2.DDL 3.DML 4.DQL 3:如果关系模式R中的每一个非主属性既不部分依赖也不传递依赖于键,则称这个关系模式属于 1.第一范式 2.第二范式 3.第三范式 4.BC范式 4:SQL语言中,删除记录的命令是 1.DELETE 2.DROP

4.REMORE 5:数据库三级模式体系结构的划分,有利于保持数据库的 1.结构规范化 2.数据安全性 3.数据独立性 4.操作可行性 6:数据的管理方法主要有 1.文件系统和分布式系统 2.批处理系统和实时处理系统 3.数据库系统和文件系统 4.数据库系统和实时处理系统 7:下列哪一个不是数据库开发的可选数据库。 1.mysql 2. DB2 3.Oracle 4.Excel 8:绝大多数数据库系统的总体结构,都具有外模式、模式和内模式三级模式结构。描述数据库中全体数据的全局逻辑结构和特征的是 1.模式和内模式

3.模式 4.外模式 9:如果在关系的分片过程中使用了选择操作,则不可能是 1.水平分片 2.垂直分片 3.导出分片 4.混合分片 10:以下关于E-R图的叙述正确的是 1. E-R图建立在关系数据库的假设上 2. E-R图使用过程和数据的关系清晰,实体间的关系可导出应用过程的表示。 3. E-R图可将现实世界(应用)中的信息抽象地表示为实体以及实体间的联系 4. E-R图能表示数据生命周期。 11:SQL语言中,创建一个表的命令是 1.View 2.DROP 3.CLEAR 4.Create 12:位于用户和操作系统之间的一层数据管理软件是 1.DBS

数据库原理及应用习题参考答案

数据库原理及应用习题参考答案 习题1 1-1 文件系统阶段的数据管理有哪些特点 答:文件系统阶段主要有5个特点:数据以“文件”形式长期保存;数据的逻辑结构与物理结构有了区别;文件组织已多样化;数据面向应用;对数据的操作以记录为单位。 1-2 文件系统阶段的数据管理有些什么缺陷试举例说明。 答:主要有3个缺陷:数据冗余;数据不一致性;数据联系弱。 例如学校里教务处、财务处、保健处建立的文件中都有学生详细资料,如联系电话,家庭住址等。这就是“数据”冗余;如果某个学生搬家,就要修改3个部门文件中的数据,否则会引起同一数据在3个部门中不一致;产生上述问题的原因是这3个部门的文件中数据没有联系。 1-3 数据库阶段的数据管理有哪些特色 答:主要有5个特点:采用数据模型可以表示复杂的数据结构;有较高的数据独立性; 为用户提供了方便的用户接口;提供了4个方面的数据控制功能;对数据的操作以数据项为 单位,增加了系统的灵活性。 1-4 什么是数据独立性在数据库中有哪两级独立性 答:数据独立性是指应用程序与DB的数据结构之间的相互独立。在物理结构改变时,尽量不影响应用程序,称为物理独立性;在逻辑结构改变时,尽量不影响应用程序,称之为逻辑数据独立性。 1-5 试解释DB、DBMS和DBS三个概念。 答:DB是长期存储在计算机内、有组织的、统一管理的相关数据的集合。 DBMS是位于用户与0S之间的一层数据管理软件,它为用户或应用程序提供访问DB的方法。 DBS是实现有组织地、动态地存储大量关联数据、方便多用户访问的计算机硬件、软件 和数据资源组成的系统,即采用数据库技术的计算机系统。 1-6 SQL Server 2005有哪些数据类型 答:SQL Server中数据类型分为整型、浮点型、二进制数据型、逻辑型、字符型、文本型、图形型、日期时间型、货币型、自定义类型、可变数据类型和表数据类型。 1-7 列举SQL Server 2005中新增的主要功能。 答:SQL Server 2005中新增的主要功能有: ⑴Notification Services增强功能; ⑵Reporting Services增强功能,其中包括:报表功能的增强功能、Reporting Services设计时增强功能、Reporting Services可编程性的增强功能、Reporting Services可管理性和部署的增强功能; ⑶新增的Service Broker以实现SQL Server中的消息传递方面具有以下优势:高伸缩性、消息协调、排序和锁定、集成数据库数据、集成数据库安全性; ⑷数据库引擎增强功能; ⑸数据访问接口方面的增强功能; ⑹SQL Server Analysis Services(SSAS)的增强功能; ⑺Integration Services的增强功能; ⑻在可管理性、可用性、可编程性、移动性、可伸缩性和性能方面提供了改进。 ⑼工具和实用工具增强功能; 第 1 页

相关文档
相关文档 最新文档