当前位置:文档之家› 2007-2008数据库系统原理期中试卷

2007-2008数据库系统原理期中试卷

浙大城市学院2007-2008学年<<数据库系统原理>>期中考试

姓名:学号:班级:

一.选择题:选择A、B、C、D之一(每题1分共10分)

1.现实世界中事物的特性在信息世界中称为()。

A. 实体

B. 实体标识符

C. 属性

D. 关键码

2. 数据库管理系统不具备的功能为

A. 定义和描述数据库结构的功能

B. 对数据库进行操纵的功能

C. 数据通讯的功能

D. 保证数据库的安全性和完整性的功能

3. 下列哪种数据模型不能很好的表达实体之间多对多的联系?

A. 层次模型

B. 网状模型

C. 关系模型

D. 面向对象模型

4. 设有一个关系:DEPT(DNO,DNAME),如果要找出第二个字母为Q,并且至少

包含4个字母的DNAME,则查询条件子句应写成WHERE DNAME LIKE

A. ‘_ _ Q _ %’

B. ‘% Q _ _’

C. ‘%_ Q _ _’

D. ‘_ Q _ _ %’

5. 使用二维表格结构表达实体及实体间联系的数据模型是( )

A. 层次模型

B. 网状模型

C. 联系模型

D. 关系模型

6. 在定义一个关系结构时,应该说明

A. 字段、数据项及数据项的值

B. 关系名、关系类型及作用

C. 属性名、属性数据类型及位数

D. 记录名、记录类型及内容

7. 取出关系中某些列的关系代数运算称之为

A. 取列运算

B. 选择运算

C. 连接运算

D. 投影运算

8. 3. 在关系代数中,可以用选择和笛卡尔积表示的运算是()

A.投影

B.交

C.连接

D.除法

9. 设R和S为二个关系,下列那组符号分别代表投影、选择、自然连接的关系

代数运算

A. R∪S 、R∩S 、R×S

B. ∨A(S)、A(R)、R*S

C. πA(R) 、σF(R)、R∞S

D. σF(R) 、πA(R)、R∞S

10. 视图本身不独立存储在数据库中,即数据库中只存放视图的()而不存放视图(),视图是一个()

A. 对应的数据、定义、实表

B. 定义、对应的数据、实表

C. 对应的数据、定义、虚表

D. 定义、对应的数据、虚表

二. 解释下列术语 (每题2分共20分)用你理解的形式描述即可

1. 关系完整性分为:_________________, _________________和用户自定义完整性。

2. SQL具有数据定义、______________、_______________、数据控制的功能。

3. 数据的独立性分为_____________和________________,前者通过模式和内模式的分离加以保证,后者通过外模式与模式的分离来实现。

4. 关系模式R中属性或属性组X并非R的关键字,但X是另外一个关系模式的关键字,则称X是R的。

5. 数据模型通常是由数据结构、和三个要素组成。

6. 关系R的主码(Primary Key)是

7. 关系代数的五种基本运算并,差,,,笛卡尔积。

8. 在SQL中,用户被授予特权的命令是,撤销特权的命令是。

9. 专门的关系运算包括选择、、、除运算等。

10. 若一个视图是从单个基本表中导出的,并且只是去掉了基本表的某些行和某些列,但保留了码,我们称这类视图为 __________________。

三. 某学校有若干个系,每个系有多个教师(工号,教师姓名,性别,职称),每个教师只能隶属于一个系(系代号,系名,办公楼名称),每个教师有多份资格证书(证书号,证书名称,有效期限),并可以教授多门课程(课程号,课程名称,学分)。画出此系统的概念模型E-R图。(9分)

答:

四.有如下的R,S,W三个关系,完成关系代数和关系演算计算题。(每题3分,共15分)

R关系S关系W关系

(1).R∩S

(2).R ×W

(3).R ÷W

(4).R W

R.C > W.C

(5). ∏A,B (σB='b W))

五.关系代数设计题(每小题5分,共10分)

设有关系Student(SNO,SNAME,SSex,ClsNo),其中各属性的含义依次为学号、姓名、性别和所在班级号,以及关系Class(ClsNO,ClsNAME,MANAGER),其中各属性含义依次为班级号、班级名称、班长的学号。

1. 写出“查询学号为95001的学生所在班级名称”的关系代数表达式。

2. 有如下关系代数表达式,将其转化成相应的SQL语句。

∏SName,SSex ((Student Manager=’004’(Class))

六.SQL语言编程问题。(每小题3分,共36分)

有以下三张表(关系);用SQL语句完成以下各题的操作。

学生表 S(S#,SN,SD),分别表示学号,学生姓名,学生所在系

课程表 C(C#,CN,PC#),分别表示课程号,课程名,先修课号,

选课表 SC(S#,C#,G),分别表示学号,课程号,成绩。

⑴.查询有学生选过课的课程门数

⑵.用连接查询查询系名为’计算机’而且选了名为’操作系统’课程的学生姓名

⑶.把所有分数低于60分的学生课程成绩更新为原成绩的1.2倍。

⑷.用“不相关子查询”查询选修人数超过60人的课程名

⑸.用“相关子查询”查询’11’号课程成绩在90分以上(含90分)的学生姓名

⑹.用左外连接查询出所有选过和没选过课的学生学号,姓名,选课号,成绩。

没选过课的课号和成绩用空表示。

⑺.查询每门课的课程号和这门课的平均成绩

⑻.写出下列操作的结果:(用文字表达,如:这个语句做了什么。。。)

DELETE FROM SC

WHERE NOT EXISTS

(SELECT *

FROM C

WHERE C.C# = SC.C#

AND https://www.doczj.com/doc/136098248.html, = ‘数据库系统原理’);

⑼.写出下列查询的结果:(用文字表达,如:这个语句查出了什么。。。) SELECT SN FROM S

WHERE EXISTS

(SELECT *

FROM SC

WHERE SC.SNO = S.SNO AND

EXISTS

(SELECT *

FROM C

WHERE C.C#=SC.C# AND CN = ‘数据库系统原理’));

⑽.删除课程名为“数据结构”的选课记录

⑾.建立一个所有选了’12’号课程的选课视图VIEW_SC,视图要包含学生学号,姓名,课程名和成绩

⑿.新增系为“计算机”学号为“95341”,姓名为“欧阳中天”的学生记录

相关主题
文本预览
相关文档 最新文档