admin 管理员组

文章数量: 1086019


2024年5月5日发(作者:sqlserver中间件)

数据库系统概论复习资料:

第一章:

一、选择题:

1.在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段.在这几个阶段中,数据

独立性最高的是阶段.

A.数据库系统B.文件系统 C.人工管理D.数据项管理

[答案:]A

2.数据库的概念模型独立于 .

A.具体的机器和DBMS B.E-R图 C.信息世界 D.现实世界

[答案:]A

3.数据库的基本特点是.

A.<1>数据可以共享<或数据结构化><2>数据独立性<3>数据冗余大,易移植<4>统一管理和控制

B.<1>数据可以共享<或数据结构化><2>数据独立性<3>数据冗余小,易扩充<4>统一管理和控制

C.<1>数据可以共享<或数据结构化><2>数据互换性<3>数据冗余小,易扩充<4>统一管理和控制

D.<1>数据非结构化<2>数据独立性<3>数据冗余小,易扩充<4>统一管理和控制

[答案:]B

4.是存储在计算机内有结构的数据的集合.

A.数据库系统B.数据库C.数据库管理系统 D.数据结构

[答案:]B

5.数据库中存储的是.

A.数据B.数据模型C.数据以与数据之间的联系D.信息

[答案:]C

6. 数据库中,数据的物理独立性是指.

A.数据库与数据库管理系统的相互独立B.用户程序与DBMS的相互独立

C.用户的应用程序与存储在磁盘上数据库中的数据是相互独立的D.应用程序与数据库中数据的逻辑结构相互独

[答案:]C

7. 数据库的特点之一是数据的共享,严格地讲,这里的数据共享是指.

A.同一个应用中的多个程序共享一个数据集合B.多个用户、同一种语言共享数据

C.多个用户共享一个数据文件D.多种应用、多种语言、多个用户相互覆盖地使用数据集合

[答案:]D

8.数据库系统的核心是.

A.数据库B.数据库管理系统C.数据模型D.软件工具

[答案:]B

9. 下述关于数据库系统的正确叙述是 .

A.数据库系统减少了数据冗余B.数据库系统避免了一切冗余

1 / 24

C.数据库系统中数据的一致性是指数据类型一致D.数据库系统比文件系统能管理更多的数据

[答案:]A

10. 数将数据库的结构划分成多个层次,是为了提高数据库的①和②.

①A.数据独立性B.逻辑独立性C.管理规范性D.数据的共享

②A.数据独立性B.物理独立性 C.逻辑独立性D.管理规范性

[答案:]①B②B

11. 数据库、数据库系统和数据库管理系统三者之间的关系是.

A.DBS包括DB和DBMSB.DDMS包括DB和DBSC.DB包括DBS和DBMSD.DBS就是DB,也就是DBMS

[答案:]A

12. 在数据库中,产生数据不一致的根本原因是.

A.数据存储量太大B.没有严格保护数据C.未对数据进行完整性控制D.数据冗余

[答案:]D

13. 数据库管理系统是.

A.数学软件B.应用软件C.计算机辅助设计D.系统软件

[答案:]D

14. 数据库管理系统的主要功能是.

A.修改数据库B.定义数据库C.应用数据库D.保护数据库

[答案:]B

15. 数据库系统的特点是、数据独立、减少数据冗余、避免数据不一致和加强了数据保护.

A.数据共享B.数据存储C.数据应用D.数据##

[答案:]A

16数据库系统的最大特点是.

A.数据的三级抽象和二级独立性B.数据共享性C.数据的结构化 D.数据独立性

[答案:]A

17. 数据库管理系统能实现对数据库中数据的查询、插入、修改和删除等操作,这种功能称为 .

A.数据定义功能B.数据管理功能C.数据操纵功能D.数据控制功能

[答案:]C

18. 数据库管理系统是.

A.操作系统的一部分B.在操作系统支持下的系统软件C.一种编译程序D.一种操作系统

[答案:]B

19.数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的是〔〕

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

[答案:]D

20数据库系统的数据独立性是指B.

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

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

2 / 24

C.不会因为存储策略的变化而影响存储结构D.不会因为某些存储结构的变化而影响其他的存储结构

[答案:]B

21.信息世界中的术语,与之对应的数据库术语为.

A.文件B.数据库C.字段D.记录

[答案:]D

22次型、网状型和关系型数据库划分原则是.

A.记录长度B.文件的大小C.联系的复杂程度D.数据之间的联系

[答案:]D

23.传统的数据模型分类,数据库系统可以分为三种类型.

A.大型、中型和小型B.西文、中文和兼容C.层次、网状和关系D.数据、图形和多媒体

[答案:]C

24. 层次模型不能直接表示.

A. 1 :1关系B.1 :m关系C. m :n关系D.1 :1和1 :m关系

[答案:]C

25. 数据库技术的奠基人之一E.F.Codd从1970年起发表过多篇论文,主要论述的是.

A.层次数据模型B.网状数据模型C.关系数据模型D.面向对象数据模型

[答案:]C

二、填空题

1. 数据管理技术经历了人工管理、文件系统和数据库系统三个阶段.

[答案:]①人工管理②文件系统②数据库系统

2.数据库是长期存储在计算机内、有 组织的、可共享的数据集合.

[答案:]①组织②共享

3.DBMS是指它是位于用户和③之间的一层管理软件.

[答案:]①数据库管理系统②用户③操作系统

4. 数据库管理系统的主要功能有数据定义功能、数据操纵功能、数据库的运行管理和数据库的建立以与维护等4

个方面.

[答案:]①数据定义功能②数据操纵功能

5.数据独立性又可分为逻辑数据独立性和 物理数据独立性.

[答案:]①逻辑数据独立性②物理数据独立性

6. 当数据的物理存储改变了,应用程序不变,而由DBMS处理这种改变,这是指数据的物理独立性.

[答案:]物理独立性

7.数据模型是由数据结构、数据操作和完整性约束三部分组成的.

[答案:]①数据结构②数据操作③完整性约束

8.数据结构是对数据系统的静态特性的描述,数据操作是对数据库系统的动态特性的描述.

[答案:]①数据结构②数据操作

9.数据库体系结构按照模式、外模式和内模式三级结构进行组织.

3 / 24

[答案:]①模式②外模式③内模式

10. 实体之间的联系可抽象为三类,它们是1∶1 、1∶m和m∶n.

[答案:]①1∶1②1∶m②m∶n

11.数据冗余可能导致的问题有①和②.

[答案:]①浪费存储空间与修改麻烦②潜在的数据不一致性

三:简答题:

1.什么是数据库?

答:数据库是长期存储在计算机内、有组织的、可共享的数据集合.数据库是按某种数据模型进行组织的、存

放在外存储器上,且可被多个用户同时使用.因此,数据库具有较小的冗余度,较高的数据独立性和易扩展性.

2.什么是数据库的数据独立性?

答:数据独立性表示应用程序与数据库中存储的数据不存在依赖关系,包括逻辑数据独立性和物理数据独立性.

逻辑数据独立性是指局部逻辑数据结构<外视图即用户的逻辑文件>与全局逻辑数据结构<概念视图>之间的独立

性.当数据库的全局逻辑数据结构<概念视图>发生变化<数据定义的修改、数据之间联系的变更或增加新的数据类

型等>时,它不影响某些局部的逻辑结构的性质,应用程序不必修改.

物理数据独立性是指数据的存储结构与存取方法<内视图>改变时,对数据库的全局逻辑结构<概念视图>和应用程

序不必作修改的一种特性,也就是说,数据库数据的存储结构与存取方法独立.

3. 什么是数据库管理系统?

答:数据库管理系统是操纵和管理数据库的一组软件,它是数据库系统的重要组成部分.不同的数据

库系统都配有各自的DBMS,而不同的DBMS各支持一种数据库模型,虽然它们的功能强弱不同,但大多数DBMS的构

成相同,功能相似.

一般说来,DBMS具有定义、建立、维护和使用数据库的功能,它通常由三部分构成:数据描述语言与其翻译程序、

数据操纵语言与其处理程序和数据库管理的例行程序.

4.什么是数据字典?数据字典包含哪些基本内容?

答:数据字典是数据库系统中各种描述信息和控制信息的集合,它是数据库设计与管理的有力工具,是进行详

细数据收集和数据分析所获得的主要成果.数据字典的基本内容有:数据项、数据结构、数据流、数据存储和处

理过程5个部分.

第一章补充作业部分:

一、假设教学管理规定:

①一个学生可选修多门课,一门课有若干学生选修;

②一个教师可讲授多门课,一门课只有一个教师讲授;

③一个学生选修一门课,仅有一个成绩.

学生的属性有学号、学生##;教师的属性有教师编号,教师##;课程的属性有课程号、课程名.

要求:根据上述语义画出ER图,要求在图中画出实体的属性并注明联系的类型;

解答:

二、某企业集团有若干工厂,每个工厂生产多种产品,且每一种产品可以在多个工厂生产,每个工厂按照固定

课程号 课程名

学号

学生

m

选修

4 / 24

n

课程

的计划数量生产产品;每个工厂聘用多名职工,且每名职工只能在一个工厂工作,工厂聘用职工有聘期和工资.工

厂的属性有工厂编号、厂名、地址,产品的属性有产品编号、产品名、规格,职工的属性有职工号、##.

〔1〕根据上述语义画出E-R图;

〔2〕将该E-R模型转换为关系模型; 〔要求:1:1和1:n的联系进行合并〕

〔3〕指出转换结果中每个关系模式的主码和外码.

答案:

〔1〕本题的E-R图如下图所示.

工产编号

厂名

地址

产品编号

n

产品名 规格

〔2〕转化后的关系模式如下:

工厂〔工厂编号

m

,厂名,地址〕

工厂

生产

产品〔产品编号,产品名,规格〕

计划数量

产品

职工〔职工号,##,工厂编号,聘期,工资〕

1

生产〔工厂编号,产品编号,计划数量〕

聘用

〔3〕每个关系模式的主码、外码如下:

聘期

n

工厂:主码是工厂编号,无外码;

工资

职工

产品:主码是产品编号,无外码;

职工:主码职工号,外码是工厂编号;

生产:主码是〔工厂编号,产品编号〕,

职工号 ##

外码是工厂编号、产品编号.

第2章关系数据库

一、选择题

1、关系数据库管理系统应能实现的专门关系运算包括.

A.排序、索引、统计B.选择、投影、连接C.关联、更新、排序D.显示、打印、制表

[答案:]B

2、关系模型中,一个关键字是.

A.可由多个任意属性组成B.至多由一个属性组成

C.可由一个或多个其值能惟一标识该关系模式中任何元组的属性组成D.以上都不是

[答案:]C

3、自然连接是构成新关系的有效方法.一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个

共有的.

A.元组B.行C.记录D.属性

[答案:]D

4、关系运算中花费时间可能最长的运算是.

A.投影B.选择C.笛卡尔积D.除

[答案:]C

5.关系模式的任何属性.

5 / 24

A.不可再分B.可再分C.命名在该关系模式中可以不惟一D.以上都不是

[答案:]A

6.在关系代数运算中,五种基本运算为.

A.并、差、选择、投影、自然连接B.并、差、交、选择、投影

C.并、差、选择、投影、乘积D.并、差、交、选择、乘积

[答案:]C

7、如图所示,两个关系R1和R2,它们进行运算后得到R3.

R2

R1

D

A

A

C

D

B

1

2

1

C

1

X

2

Y

5

y

R3

A

A

C

C

A.交B.并C.笛卡尔积D.连接

[答案:]D

二、填空题

1、一个关系模式的定义格式为.

[答案:]关系名<属性名1,属性名2,…,属性名n>

2、.一个关系模式的定义主要包括关系名、属性名、属性类型、

属性长度和关键字.

[答案:]①关系名②属性名③属性类型④属性长度⑤关键字

3、.关系代数运算中,传统的集合运算有①、②、③和④.

[答案:]①笛卡尔积②并③交④差

4、关系代数运算中,基本的运算是①、②、③、

④和⑤.

[答案:]①并②差③笛卡尔积④投影⑤选择

5、关系代数运算中,专门的关系运算有选择、投影和连接.

[答案:]①选择②投影③连接

6、关系数据库中基于数学上两类运算是关系代数和关系演算.

[答案:]①关系代数②关系演算

6 / 24

E

M

N

M

M

I

J

K

B

1

1

2

C

X

Y

y

D

M

M

N

E

I

I

J

7、.已知系<系编号,系名称,系主任, ,地点>和学生<学号,##,性别,入学日期,专业,系编号>两个关系,系关系

的主关键字是①,系关系的外关键字②,学生关系的主关键字是③,外关键字④

[答案:]①系编号②无③学号④系编号

第3章关系数据库标准语言SQL

一、选择题

1、SQL语言是的语言,易学习.

A.过程化B.非过程化C.格式化D.导航式

[答案:]B

2、SQL语言是语言.

A.层次数据库B.网络数据库C.关系数据库D.非数据库

[答案:]C

3、SQL语言具有的功能.

A.关系规范化、数据操纵、数据控制B.数据定义、数据操纵、数据控制

C.数据定义、关系规范化、数据控制D.数据定义、关系规范化、数据操纵

[答案:]B

4、SQL语言具有两种使用方式,分别称为交互式SQL和.

A.提示式SQLB.多用户SQLC.嵌入式SQLD.解释式SQL

[答案:]C

5、假定学生关系是S,课程关系是C,学生选课关系是SC.

要查找选修"COMPUTER"课程的"女"学生##,将涉与到关系.

A.SB.SC,CC.S,SCD.S,C,SC

[答案:]D

6、如下面的数据库的表中,若职工表的主关键字是职工号,部门表的主关键字是部门号,SQL操作不能执行.

A.从职工表中删除行<‘025’,‘王芳’,‘03’,720>B.将行<‘005,’,‘乔兴’,‘04’,750>插入到职工表

C.将职工号为,‘001’的工资改为700D.将职工号为,’038’的部门号改为‘03’

[答案:]B

7、若用如下的SQL语句创建一个student表:

CREATE TABLE student NOT NULL,

NAME C<8> NOT NULL,

SEX C<2>,

AGE N<2>>

可以插入到student表中的是.

A.<‘1031’,‘曾华’,男,23>B.<‘1031’,‘曾华’,NULL,NULL>

C.D.<‘1031’,NULL,‘男’,23>

[答案:]B

7 / 24

第8到第11题基于这样的三个表即学生表S、课程表C和学生选课表SC,它们的结构如下:

S

C

SC

其中:S#为学号,SN为##,SEX为性别,AGE为年龄,DEPT为系别,C#为课程号,CN为课程名,GRADE为成绩.

8、检索所有比"王华"年龄大的学生##、年龄和性别.正确的SELECT语句是

A.SELECT SN,AGE,SEX FROM S

WHERE AGE>

WHERE SN="王华">

D.SELECT SN,AGE,SEXFROM S

WHERE AGE>王华.AGE

[答案:]A

9、检索选修课程"C2”的学生中成绩最高的学生的学号,正确的SELECT语句是.

A.SELECT S# FORM SCWHERE C#="C2” AND GRAD>=

WHERE C#="C2”>

C.SELECT S# FORM SC

WHERE C#="C2” AND GRADE NOT IN

WHERE C#="C2”>

[答案:]D

10、检索学生##与其所选修课程的课程号和成绩.正确的SELECT语句是.

A.SELECT S.SN,SC.C#,SC.GRADE

8 / 24

FROM S

WHERE S.S#=SC.S#

B.SELECT S.SN,SC.C#,SC.GRADE

FROM SC

WHERE S.S#=SC.GRADE

C.SELECT S.SN,SC.C#,SC.GRADE

FROM S,SC

WHERE S.S#=SC.S#

D.SELECT S.SN,SC.C#,SC.GRADE

FROM S.SC

[答案:]C

11、检索选修四门以上课程的学生总成绩<不统计不与格的课程>,并要求按总成绩的降序排列出来.

正确的SELECT语句是.

A.SELECT S#,SUMFROM SC

WHERE GRADE>=60

GROUP BY S#

ORDER BY 2 DESC

HAVING COUNT<*>>=4WHERE C#="C2” AND GRADE>=

WHERE C#="C2”>

C.SELECT S# FORM SC

WHERE C#="C2” AND GRADE NOT IN

WHERE C#="C2”>

[答案:]D

二、填空题

1、SQL是结构化查询语言.

[答案:]结构化查询语言

9 / 24

2、视图是一个虚表,它是从①中导出的表.在数据库中,只存放视图的②,不存放视图的③.

[答案:]①一个或几个基本表②定义③视图对应的数据

3、设有如下关系表R:

R

主关键字是NO

其中NO为学号,NAME为##,SEX为性别,AGE为年龄,CLASS为班号.

写出实现下列功能的SQL语句.

①插入一个记录<25,"李明","男",21,"95031”>;.

②插入"95031”班学号为30、##为"郑和"的学生记录;.

③将学号为10的学生##改为"王华";.

④将所有"95101”班号改为"95091”;.

⑤删除学号为20的学生记录;.

⑥删除姓"王"的学生记录;.

[答案:]

①INSERT INTO R VALUES<25,"李明","男",21,"95031">

②INSERT INTO RVALUES<30,"郑和","95031”>

③UPDATE R SET NAME="王华"WHERENO=10

④UPDATE R SET CLASS="95091”WHERE CLASS="95101”

⑤DELETE FROM R WHERE NO=20

⑥DELETE FROMR WHERE NAME LIKE"王%"

第3章书面作业

1、设学生课程数据库中有三个关系:

学生关系S〔S#,SNAME,AGE,SEX〕

学习关系SC〔S#,C#,GRADE〕

课程关系C〔C#,CNAME〕

其中S#、C#、SNAME、AGE、SEX、GRADE、CNAME分别表示学号、课程号、##、年龄、性别、成绩和

课程名.

用SQL语句表达下列操作

〔1〕检索选修课程名称为"MATHS"的学生的学号与##

〔2〕检索至少学习了课程号为"C1”和"C2”的学生的学号

〔3〕检索年龄在18到20之间〔含18和20〕的女生的学号、##和年龄

〔4〕检索平均成绩超过80分的学生学号和平均成绩

〔5〕检索选修了全部课程的学生##

〔6〕检索选修了三门课以上的学生的##

[答案:]〔1〕SELECT SNAME,AGE

10 / 24

FROM S,SC,C

WHERE S.S#=SC.S#

AND C.C#=SC.C#

AND CNAME=’ MATHS’

<2> SELECT S#

FROM SC

WHERE CNO=’C1’ AND S# IN< SELECT S#

FROM SC

WHERE CNO=’C2’>

<3>SELECT S#,SNAME,AGE

FROM S

WHERE AGE BETWEEN 18 AND 20

<4> SELECT S# ,AVG ‘平均成绩’

FROM SC

GROUP BY S#

HAVING AVG>80

<5>SELECTSNAME

FROMS

WHERENOTEXISTS

FROMC

WHERE NOTEXISTS

FROMSC

WHERE S#=S.S#AND C#=C.C#

>

>

<6> SELECT SNAME

FROM S,SC

WHERE S.S#=SC.S#

GROUP BY SNAME

HAVING COUNT<*>>3

2、设学生-课程数据库中包括三个表:

学生表:Student 〔Sno,Sname,Sex,Sage,Sdept〕

课程表:Course〔Cno,Cname,Ccredit〕

11 / 24

学生选课表:SC〔Sno,Cno,Grade〕

其中Sno、Sname、Sex、Sage、Sdept、 Cno、Cname、Ccredit 、Grade分别表示学号、##、性别、年龄、

所在系名、课程号、课程名、学分和成绩.

试用SQL语言完成下列项操作:

〔1〕查询选修课程包括"1042"号学生所学的课程的学生学号

〔2〕创建一个计科系学生信息视图S_CS_VIEW,包括Sno学号、Sname##、Sex性别;

〔3〕通过上面第2题创建的视图修改数据,把王平的名字改为王慧平

〔4〕创建一选修数据库课程信息的视图,视图名称为datascore_view,包含学号、##、成绩.

[答案:]<1> SELECT DISTINCT SNO

FROM SC SCX

WHERE NOT EXISTS

FROM SC SCZ

WHERE = AND

=>>;

<2>CREATE VIEW S_CS_VIEW

AS

SELECT SNO,SNAME,SEX

FROM STUDENT

WHERE Sdept=’CS’

<3>UPDATE S_CS_VIEW

SET SNAME=’ 王慧平’

WHERE SNAME=’ 王平’

<4> CREATE VIEW datascore_view

AS

SELECTSNO学号、SNAME##、GRADE 成绩

FROM STUDENT,SC,COURSE

WHERE =

AND =

12 / 24


本文标签: 数据 数据库 关系 学生 课程