数据库原理期末模拟试题大全 下载本文

内容发布更新时间 : 2024/5/19 0:45:52星期一 下面是文章的全部内容请认真阅读。

机会总是留给有准备的人。

数据库原理模拟试卷

一、项选择题(在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填

在题后的括号内。每小题1分,共15分) 1.数据库系统的体系结构是( A )

A、两级模式结构和一级映象 B、三级模式结构和一级映象 C、三级模式结构和两级映象 D、三级模式结构和三级映象 2.SQL语言称为( C )。

A、结构化定义语言 B、结构化控制语言 C、结构化查询语言 D、结构人操纵语言 3.在视图上不能完成的操作是( C )。

A、在视图上定义新的视图 B、查询操作

C、更新视图 D、在视图上定义新的基本表 4.数据库的并发操作有可能带来的三个问题中包括( D )。 A、数据独立性降低 B、无法读出数据 C、权限控制 D、丢失更新 5.当前应用最广泛的数据模型是(B)。

A、ER模型 B、关系模型 C、网状模型 D、层次模型

6.现有一个关系:借阅(书号、书名,库存数,读者号,借期,还期),假如同一本书允许一个读者多次借阅,但不能同时对一种书借多本。则该关系模式的码是( D )。 A、书号 B、读者号

C、书号+读者号 D、书号+读者号+借期 7.要保证数据库物理数据独立性,需要修改的是( B )

A.模式 B.模式与内模式的映射 C.模式与外模式的映射 D.内模式 8.下列四项中,不属于数据库特点的是( D )

A.数据共享 B.数据完整性 C.数据冗余较小 D.数据独立性低 9.数据库中存储的是( D )

A.数据 B.数据模型

C.数据之间的联系 D.数据以及数据之间的联系 10.反映现实世界中实体及实体间联系的信息模型是( D )

A.关系模型 B.层次模型 C.网状模型 D.E—R模型 11. 五种基本关系代数运算是 ( A )

A. ∪,-,×,π和σ B. ∪,-,∞,π和σ C. ∪,∩,×,π和σ D. ∪,∩,∞,π和σ

第 1 页 共 28 页

机会总是留给有准备的人。

12.数据库保护的几个方面中,不包括的是( A )

A.控制数据冗余 B.并发控制 C.完整性保护 D.故障恢复 13.下列四项中,关系规范化程度最高的是关系满足( B )

A.非规范关系 B.第三范式 C.第二范式 D.第一范式 14.单个用户使用的数据视图的描述称为 ( A )

A. 外模式 B.概念模式 C.内模式 D.存储模式 15. 子模式DDL用来描述 ( B ) A. 数据库的总体逻辑结构 B. 数据库的局部逻辑结构 C. 数据库的物理存储结构 D. 数据库的概念结构

二、填空题(每空1分,共15分)

1、在三大传统的数据模型中,具有严格的数学理论基础的是_关系模型___。 2、实现概念模型最常用的表示方法是_E-R图__。 3、DBMS并发控制的单位为__事务__。

4、数据库恢复要涉及到的两个技术是_数据转储__、_登记日志文件___。

5.数据库管理系统(DBMS)通常提供__数据定义______、数据操纵、数据控制和数据库维护。 6.数据库保护问题包括:__安全性______、完整性、故障恢复和并发控制等多方面。 7.关系代数中专门的关系运算包括: 选择 、投影、连接和除法。

8.从关系规范化理论的角度讲,一个只满足1NF的关系可能存在的四方面问题是:数据冗余度大、修改麻烦、_删除异常、插入异常 _______。

9. 关系操作语言________有两种不同类型:关系代数型和关系演算型。 10.数据库的逻辑模型设计阶段,任务是将_E-R图转化成关系模型____。

11.如果一个关系满足2NF,则该关系一定也满足___1NF_____(在NF~NF范围内)。

12.利用事先保存好的日志文件和数据库的副本,就有可能在数据库被破坏后_恢复______。 13.绘制数据流程图时,需要使用__四___种基本成份。

14. 关系规范化________是设计关系数据库的指南和工具。 三、解释下列术语(每小题3分,共15分)

1、 数据库系统(位于用户和操作系统之间的一层数据管理软件) 2、 内模式(数据物理结构的和和存储方式的描述) 3、 封锁(实现并发控制的一个技术) 4、 第三范式(3NF)(满足1NF、且所有非主属性的完全依赖于码、无传递依赖) 5、 候选码(在一个关系中、某一组属性值能够唯一的标示一个元组) 四、简答题(每小题3分,共15分)

1.简述数据库系统的特点。 答案:1、数据结构化

2、数据的共享性高、冗余度底、易扩展 3、数据独立性高 4.由DBMS统一管理

2.什么是关系的实体完整性规则?

3.说明如果关系模式设计不好,可能带来哪几个问题?

第 2 页 共 28 页

机会总是留给有准备的人。

4.说明数据库设计的主要步骤。

5.简要说明事务的属性有哪些?原子性、一致性、隔离性、永久性 五、应用题(每小题3分,共15分) 设有关系模式为:

学生(学号,姓名,性别,年龄,所在系) 课程(课程号,课程名,先行课) 选课(学号,课程号,成绩) 请用关系代数完成下列操作:

(1) 求选修了课程号为“5”课程的学生学号和姓名。 (2) 求没有选修课程号为“5”课程的学生学号。 (3) 求既选修了课程号为“5”,又选修“6“号课程的学生学号。 (4) 求选修了全部课程的学生学号和姓名。

(5) 求选修了学号为“95001”学生所学过的所有课程的学生学号和姓名。 六、写出下列操作的SQL语句(每小题2分,共10分)

1. 建立一张教师工资表teacher,它由编号BH,姓名XM,部门BM,基本工资JBGZ,补贴BT,

工会费GHF,公积金GJJ,实发工资SFGZ组成,主码为编号BH。 Create table teacheer( BH number(10) primary key, XM VARCHAR(20), BM VARCHAR(20), JBGZ number(10), BT number(10),

GJJ number(10), SFGZ number(10)

);

2. 向上述教师工资表增加一个“误餐费(WCF)”列,类型为整型。

Alter table teacher add column wcf int;

3. 建立上述教师工资表teacher的按编号的索引,索引名称为teach

Create index teach on teacher(bh); 唯一索引 unique index ,聚族索引 clustered index

4. 建立上述教师工资表teacher的视图,视图包括姓名、基本工资、实发工资,名称为BMV,条件

是部门是“经管系”。 Cteate view BMV as Select XM,JBGZ,SFGZ From teacher Where bm=’经管系’;

5. 删除基本表教师工资表teacher。

Drop table teacher;

七、综合题(本题15分)

针对第五题所用的三张表,用SQL语言进行下列各项操作: 设有关系模式为:

学生(学号,姓名,性别,年龄,所在系)

第 3 页 共 28 页

机会总是留给有准备的人。

课程(课程号,课程名,先行课) 选课(学号,课程号,成绩)

1. 查询年龄在18到22之间的学生的姓名,年龄,所在系;(2分)

Select 姓名,年龄,所在系 From 学生

Where 年龄 between 18 and 22; 2. 查询所有姓“李”的学生的成绩;(2分)

Selecct 成绩 From 选课

Where 学号 IN( Select 学号 From 学生 Where 姓名 like ‘李%’

);

3. 查询选修了5门以上课程的学生学号;(2分)

Select 学号 From 选课 Group by 学号 Having count(*)>=5

4. 查询选修了“数据库原理”这门课的学生的姓名;(2分)

Selecct 姓名 From 学生

Where 学号 IN( Select 学号 From选课 Where 课程号 IN( Select课程号 From 课程 Where 课程名=’数据库原理’ ) );

5. 查询其他系中比“经管系“所有学生年龄都大的学生名单(2分)

Select From学生

Where 年龄>=(select max(年龄) from 学生 where 所在系=’经管系’); 6. 查询选修了全部课程的学生学号和姓名。(2分)

Selecct 学号,姓名 From 学生

Where not exists( Select *

第 4 页 共 28 页

机会总是留给有准备的人。

From 选课

Where 课程号 not exists( Select * From 课程 Where 学生.学号=选课.学号 and 选课.课程号=课程.课程号 ) );

参考:

思路:学号未知,科目未知,说明有两个未知变量。应该有两个EXISTS。我们可以扫描 student 和 course共有 s * c 中组合,将这些组合与SC的每一项进行匹配,注意s*c组合已经包含所

有可能。如果全部找到 ,就说明已经选修了全部课程。找不到就说明有课程没选修 。再将没选修的的

提交给上一exists 循环 。若上一exists 不存在的再提交给外循环。 select Sname from student where NOT exists // (select * from course

where NOT exists //不存在的提交给course (select * from SC where

Sno = student.sno and cno = Course.Cno)) // 代入两个未知变量

7. 插入一条记录(99001,张强,男,22,经管系)到学生表中;(1分)

Insert into 学生 values(99001,’张强’,’男’,22,’经管系’); 8. 将学生“95001”的学号改成“99089”。(2分)

Update 学生 set 学号=99089 where 学号=95001;

数据库原理模拟试卷(2)

一、 单项选择题(在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的

字母填在题后的括号内。每小题1分,共15分) 1.下列说法中不正确的是( )。

A、任何一个包含两个属性的关系模式一定满足3NF B、任何一个包含两个属性的关系模式一定满足BCNF C、任何一个包含三个属性的关系模式一定满足3NF D、任何一个关系模式都一定有码

2.关系模型中,表示实体间n:m联系是通过增加一个( ) A、关系实现 B、属性实现

C、关系或一个属性实现 D、关系和一个属性实现 3 .3NF同时又是( )

A、2NF B、1NF C、BCNF D、1NF,2NF

第 5 页 共 28 页