数据库原理总复习题 下载本文

A.数据库结构 C.操作系统

B.数据库管理系统

D.数据模型

8. 当局部E-R图合并成全局E-R图时可能出现冲突,不属于合并冲突的是 ( ) A、属性冲突 B、语法冲突 C、结构冲突 D、命名冲突 9. 建立数据字典的时机是( )

A、需求分析阶段 B、数据库物理设计阶段

C、数据库实施 D、概念结构设计阶段 10. 如果事务T对数据D已加锁,则其他事务对数据D( )

A.可以加S锁,不能加X锁 B.可以加S锁,也可以加X锁 C.不能加S锁,可以加X锁 D.不能加任何销 11. 为了保证数据的完整性,事务必须具有原子性、一致性、隔离性和 ( )。 A.可串行性 B.并行性 C.完整性 12.封锁机制是实现数据库( )的主要方法。

A.完整性 B.安全性 C.并发控制

D.持久性

D.保护

13. 如果一个关系R中的所有非主属性都完全函数依赖于键码,则称关系R属于( )。 A. 2NF B. 3NF C. 4NF D. BCNF 14.若关系模式R(U,F)属于3NF,则( )

A.一定属于BCNF B.消除了插入的删除异常 C.仍存在一定的插入和删除异常 D.属于BCNF且消除了插入和删除异常

15.一个学生可以同时借阅多本图书,一本图书只能由一个学生借阅,学生和图书之间为( )的联系。

A.一对一 B.一对多 C.多对多 D.多对一 16. ( )是数据库中全部数据的逻辑结构和特征的描述。

A.模式

B. 外模式

C.内模式 D. 存储模式

17.保护数据库中的信息,防止未经授权或非法的使用所造成的数据泄漏、更改或破坏,称为数据库的( )

A.安全性 B.完整性 C.恢复 D.并发控制 18.数据库中对访问权限的定义称为( )

A.审核 B.定义 C.命令 D.授权 19. 若系统在运行过程中,由于某种硬件故障,使存储在外存上的数据部分丢失或全部丢失, 这种情况称为( )

A、事务故障 B、系统故障 C、介质故障 D、运行故障 20.授权和完整性管理器属于DBMS的( )

A.操作管理器 B.存储管理器 C.控制管理器 D.用户管理器

单项选择题二

1、C2、B;3、C 4、C5、D 6、C 7、D 8、C 9、A 10、A

11、D 12、C 13、A 14、C 15、B 16、A 17、A 18、D 19、C 20、C。

21、在关系模型中字段称为( b )。

A、层次模型 B、属性 C、关系 D、元组

22、microsoft sql server是一种基于客户机/服务器的关系数据库管理系统,它使用( a )语言在服

务器和客户机之间传送请求。

A、transact-sql B、base C、asp D、c++

23、在数据库中,主关键字的名称可以使用( c )来唯一识别。 A、E-R图 B、主键 C、UID D、属性 24、( b )是由实体、属性和联系三种基本要素组成。

A、关系数据库 B、E-R图 C、复制模型 D、数据完整型

26、在( d )约束中可以包含搜索条件,但是不能包含子查询,该约束限制输入到一列或多列中的可能值,从而保证了数据库中的域完整性。

A、PRIMARY KEY B、DEFAULT C、UNIQUE D、CHECK 27、空值意味着用户没有输入值,它既不代表( a ),也不代表0。空值与任何数据运算或比较时,其结果仍为空。

A、空格 B、0 C、空 D、无

28、如果select语句返回的结果集合中的行数太多,可以使用( b )选项来限制返回的数据行数。 A、go B、top n C、return D、first

29、如果需要在一行记录中给所有的字段添加数据,则可以省略insert语句中的字段列表,只需要在( b )关键字后面列出添加的数据值就可以了,插入的数值顺序需要与目标表中的字段顺序保持一致。

A、INSERT B、VALUES C、SET D、FROM

30、通过create table语句或者其他方法创建了一个表后,可以使用( a )语句在表中添加记录。 A、INSERT B、DELETE C、UPDATE D、INSEATER

31、如果需要删除表中包含的无用数据,可以使用delete语句从表中删除满足条件的若干条记录,也可以使用( d )语句从表中快速删除所有记录。

A、DELETE B、INSEATER C、DEL D、TRUNCATE TABLE

32、如果表创建唯一索引后sql server将禁止( b )语句向表中添加重复的键值行。 A、INSERT B、INSERT语句或UPDATE C、UPDATE D、ADD

33、使用SQL SERVER 2000的助手向导程序生成的数据网页,是( b )的HTML文档。 A、SQL SERVER 2000 B、静态 C、ASP D、动态

四、简答题

1、试述数据库设计的基本步骤。 答:(1)需求分析阶段:需求收集和分析,得到数据字典和数据流图。

(2)概念结构设计阶段:对用户需求综合、归纳与抽象,形成概念模型,用E-R图表示。 (3)逻辑结构设计阶段:将概念结构转换为某个DBMS所支持的数据模型。

(4)数据库物理设计阶段:为逻辑数据模型选取一个最适合应用环境的物理结构。

(5)数据库实施阶段:建立数据库,编制与调试应用程序,组织数据入库,程序试运行。 (6)数据库运行和维护阶段:对数据库系统进行评价、调整与修改。 2、数据字典通常包括哪5个部分?

数据字典包括数据项、数据结构、数据流、数据存储和处理过程五部分。 3、数据流图的4种基本成分是什么?分别用什么表示?

4、什么是事务?它有哪些属性?

答:事务是用户定义的一个操作序列,这些操作要么全做要么全不做,事务是一个不可分割的工作单位。事务具有四个特性:原子性、一致性、隔离性和持续性。 这个四个特性也简称为ACID特性

5、简述预防死锁的两种方法。

预防死锁通常有两种:一次封锁法和顺序封锁法。

一次封锁法:一次封锁法要求每个事务必须一次将所有要使用的数据全部加锁,否则就不能继续执行。一次封锁法虽然可以有效地防止死锁的发生,但每次要就将以后用到的全部数据加锁,从而降低了系统的并发度。

顺序封锁法:顺序封锁法是预先对数据对象规定一个封锁顺序,所有事务都按这个顺序实行封锁

6.数据库系统生存期是什么?

把数据库应用系统从开始规划、系统分析、系统设计、实施、投入运行后的维护到最后由新的系统替换原有的数据库系统的整个期间。

7.为什么说需求分析是数据库系统开发中最困难的任务之一? (1)系统本身的需求是不断变化的;

(2)由于用户缺少计算机信息系统设计方面的专业知识,要准确表达需求很困难; (3)通过需求分析可以沟通用户与设计人员。

8.数据库的三级模式和两级映象体系结构中,模式/内模式映象存在于概念级和内部级之间,用于定义概念模式和内模式间的对应性。其主要作用是什么?

由于概念模式和内模式的两级的数据结构可能不-致,即记录类型、字段类型的命名、组成可能不一致,用这个映象说明概念记录和内部记录间的对应性。

9.简述逻辑数据的独立性。

当对数据库的概念模式进行修改时,内模式尽可能保持不变或尽量少的作修改,即对概念模式的修改尽量不影响外模式和应用程序,称数据库达到了逻辑数据独立性。

10.数据库是一个共享资源,在多用户共享系统中,并发操作的含义是什么? 在多用户共享系统中,多个用户同时对同一数据进行操作称为并发操作

11.什么是数据库的并发控制?

数据库技术的一个特点是数据共享,但多个用户同时对同一个数据的并发操作可能会破坏数据库中的数据,数据库的并发控制能防止错误发生,正确处理好多用户、多任务环境下并发操作。

七、操作题

有一个“学生-课程”数据库,数据库中包括三个表: (1) “学生”表Student由学号(Sno)、姓名(Sname)、性别(Ssex)、年龄(Sage)、所在系(Sdept)五个属性组成,可记为: Student(Sno,Sname,Ssex,Sage,Sdept) Sno 为关键字。

(2) “课程”表Course由课程号(Cno)、课程名(Cname)、先修课号(Cpno)、学分(Ccredit)四个属性组成,可记为: Course(Cno,Cname,Cpno,Ccredit) Cno为关键字。

(3) “学生选课”表SC由学号(Sno)、课程号(Cno)、成绩(Grade)三个属性组成,可记为: SC(Sno,Cno,Grade) (SNO, CNO) 为关键字。 完成下列操作:

1、 建立一个“学生”表Student,它由学号Sno、姓名Sname、性别Ssex、年龄Sage、所在系Sdept五个属性组成,其中学号属性不能为空,并且其值是唯一的。 CREATETABLE Student

(Sno CHAR(5) NOT NULL UNIQUE, Sname CHAR(20), Ssex CHAR(1), Sage INT,

Sdept CHAR(15));

2、 向Student表增加“入学时间”列,其数据类型为日期型。 ALTER TABLE Student ADD Scome DATE; 3、删除Student表

DROP TABLE Student ;

4、查询全体学生的学号与姓名 SELECT Sno, Sname FROM Student;

5、查询全体学生的详细记录 SELECT * FROM Student;

6、查所有选修过课的学生的学号 SELECT DISTINCT Sno FROM SC;

7、查所有年龄在20岁以下的学生姓名及其年龄 SELECT Sname, Sage FROM Student WHERE Sage <20;

8、查考试成绩有不及格的学生的学号 SELECT DISTINCT Sno FROM Course WHERE Grade <60;

9、查询年龄在20至23岁之间的学生的姓名、系别、和年龄 SELECT Sname, Sdept, Sage FROM Student

WHERE Sage BETWEEN 20 AND 23;

10、查所有姓刘的学生的姓名、学号和性别 SELECT Sname, Sno, Ssex FROM Student

WHERE Sname LIKE '刘%';

11、查姓“欧阳”且全名为三个汉字的学生的姓名 SELECT Sname FROM Student

WHERE Sname LIKE '欧阳__';

12、查询选修了3号课程的学生的学号及其成绩,查询结果按分数的降序排列 SELECT Sno, Grade FROM SC

WHERE Cno='3'

ORDER BY Grade DESC;

13、计算1号课程的学生平均成绩 SELECT AVG(Grade) FROM SC

WHERE Cno='1';

14、查询学习1号课程的学生最高分数 SELECT MAX(Grade) FROM SC

WHERE Cno='1';

15、查询与“刘晨”在同一个系学习的学生 SELECT Sno, Sname, Sdept FROM Student

WHERE Sdept IN (SELECT Sdept