天津科技大学 - - 数据库系统试卷及答案

发布时间:2019-07-22 08:47:49   来源:文档文库   
字号:

姓名:XXX 学号:XXXXXXXX

1、单项选择题(请将每小题的答案代码填写在下面相应位置,写在其它地方无

效,每小题1分,共15分)

1. 以下四个叙述中,哪一个不是对关系模式进行规范化的主要目的( C  )。

    A. 减少数据冗余                   B. 解决更新异常问题

    C. 加快查询速度                   D. 提高存储空间效率

2. 事务的原子性是指(  B )。

    A. 事务一旦提交,对数据库的改变是永久的

    B. 事务中包括的所有操作要么都做,要么都不做

    C. 一个事务内部的操作及使用的数据对并发的其他事务是隔离的

D. 事务必须使数据库从一个一致性状态变到另一个一致性状态

3. 事务的持续性是指(  B )。

A.事务中包括的所有操作要么都做,要么都不做

B.事务一旦提交,对数据库的改变是永久的

C.一个事务内部的操作及使用的数据对并发的其他事务是隔离的

D.事务必须是使数据库从一个一致性状态变到另一个一致性状态

4. 数据库的概念模型独立于( A )。

    A. 具体的机器和DBMS             B. E-R

    C. 信息世界                    D. 现实世界

5. 候选码中的属性称为( B  )。

A. 非主属性    B. 主属性  C. 复合属性    D. 关键属性

6. 下述关于数据库系统的正确叙述是( A  )。

A.数据库系统减少了数据冗余

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

C.数据库系统中数据的一致性是指数据类型一致

D.数据库系统比文件系统能管理更多的数据

7. C )是DBMS的基本单位,它是用户定义的一组逻辑一致的程序序列。

A.程序 B.命令 C.事务 D.文件

8. 用于数据库恢复的重要文件是( C )。

A.数据库文件 B.索引文件

C.日志文件 D.备注文件

9. 若系统在运行过程中,由于某种原因,造成系统停止运行,致使事务在执行过程中以非控制方式终止,这时内存中的信息丢失,而存储在外存上的数据未受影响,这种情况称为( B )。

A.事务故障 B.系统故障

C.介质故障 D.运行故障

10. 解决并发操作带来的数据不一致性总是普遍采用( A )。

A.封锁 B.恢复 C.存取控制 D.协商

11. 关于“死锁”,下列说法中正确的是( B

A.死锁是操作系统中的问题,数据库操作中不存在

B.在数据库操作中防止死锁的方法是禁止两个用户同时操作数据库

C.当两个用户竞争相同资源时不会发生死锁

D.只有出现并发操作时,才有可能出现死锁

12. 对并发操作若不加以控制,可能会带来( B )问题。

A.不安全 B.死锁 C.死机 D.不一致

13. 并发操作会带来哪些数据不一致性( D

A.丢失修改、不可重复读、脏读、死锁

B.不可重复读、脏读、死锁

C.丢失修改、脏读、死锁

D.丢失修改、不可重复读、脏读

14. 从一个数据库文件中取出满足某个条件的所有记录的操作是(  A  )。

A.选择 B.连接 C.投影 D.复制

15. 对数据对象施加封锁,避免死锁的方法没有采用以下(  C )策略。

A.顺序封锁法 B.一次封锁法

C.先来先服务 D.两段锁

二、判断题(请判断下面说法是否正确,并在下面相应位置填写√或×,写在其它地方无效,每题1分,共10分)

1. X )层次模型和网状模型统称为关系模型。

2. )事务一旦提交,对数据库的修改就是永远的是指持久性。

3. )为使程序员编程时既可以使用数据语言,又可以使用常规的程序设计语言,数据库系统需要把数据库语言嵌入到宿主语言中。

4. X )在SELECT语法中,“_”可以匹配多个字符。

5. )不属于数据库管理技术发展阶段的是自动处理阶段。

6. X )任何由二个属性组成的关系不可能是 3NF

7. X RXYZ)是个三元关系,XYZ是单属性且X是码,则R一定是2NF

8. X )数据模型包括数据结构、数据操作、完整性约束条件。

9. X)一个表中如果定义了主键就不能再在任何列上定义唯一约束(Unique)。

10. )从数据库逻辑设计来看,减少连接运算可以改善数据库的性能。

三、数据库设计题(25分)

1. 在进行学生课程管理数据库系统设计过程中获得的语义如下:

1)有若干学生,学生属性包括:学号、姓名、性别

2)有若干教师,教师属性包括:编号、姓名、职称

3)开设若干课程,课程属性包括:课号、课名、学分

4)一门课程可由多名教师在不同的时间任教,一名教师可任多门课程。

5)一门课程有多名学生选修,每名学生可选多门课,每门课有一个成绩。

要求:

(1)试设计 ER 图,注明属性和联系类型。 5分)

(2) ER 图转换为等价的关系模型(包括关系名,属性名和码)。 12分) 学生(学号 姓名,性别,编号,课号)

教师(编号,姓名,职称)

选修(学号,课号,成绩)

任教(编号,课号,时间)

(3)指出以上各关系模式所达到的范式级别,如果不是第三范式的请转成第三范式,并给出理由。(8分)

答。都是第三范式,。因为在模式中都不存在函数依赖和传递函数依赖

四、应用题。根据下面要求,写出完成每小题功能的SQL语句(每小题5分,共50分)

设有一个数据库包括如下3个关系模式:

1)借书卡(卡号,姓名,班级)

2)图书 (书号,书名,作者,单价,库存册数)

3)借书记录(卡号,书号,还书日期)

语义如下:

1)姓名、书名不允许为空;

2)班级默认值为“101031”;

3)单价允许取值大于0,库存册数允许取值大于等于0

1. SQL语句建立三个表(15分)

CREATE TABLE BookCards

(C_ID char(10) PRIMARY KEY,

S_Name char(10) not NULL,

Class char(10) default('101031')

)

CREATE TABLE Book

(B_ID char(10) PRIMARY KEY,

B_Name char(20) NOT NULL,

Writer char(10),

Price money,check(price>0),

num int ,check(num>=0)

)

CREATE TABLE Borrow

( C_ID char(10) ,

B_ID char(10),

riqi datetime,

PRIMARY KEY(C_ID,B_ID)

)

2. 针对上题中建立的四个表试用SQL语言完成如下查询和操作。(15分)

1)利用多表连接, 查询卡号‘07166’借阅《数据结构》的还书日期。

SELECT C_ID ,B_Name ,riqi

FROM Book,Borrow

WHERE C_ID='07166' AND B_Name='数据结构'

(2)利用子查询,查询借阅《数学史》的所有卡号。

SELECT C_ID 卡号

FROM Borrow

WHERE B_ID in( SELECT B_ID

FROM Book

WHERE B_Name='数学史')

3)删除数据库中卡号为‘08112’的相应记录。

DELETE FROM BookCards DELETE FROM Borrow

WHERE C_ID='08112' WHERE C_ID='08112'

4)请将 (08741’,‘10023) 插入借书记录关系。

GO

INSERT Borrow (C_ID,B_ID)VALUES ('08741','10023')

(5)请为《数据库原理与应用》建立一个借阅情况的视图,包括卡号、书号和还书日期。 CREATE VIEW Borrow_book

AS

SELECT C_ID,a.B_ID,riqi

FROM Borrow a, Book b

WHERE a.B_ID=b.B_ID AND B_Name='数据库原理与应用'

3. 创建一个存储过程,显示图书归还情况,如归还则显示归还时间,如未归还,则显示“未归还”

CREATE PROCEDURE return_book

AS

SELECT riqi 还书日期,

riqi=

CASE

WHEN riqi is NULL THEN '未归还'

ELSE riqi

END FROM Borrow

4. 定义一个触发器,借书记录表中增加记录时自动将新增记录的还书日期设定为当前日期。 CREATE TRIGGER Borrow_1

ON Borrow

FOR INSERT

AS UPDATE Borrow

set riqi=getdate()

本文来源:https://www.2haoxitong.net/k/doc/4cd468c7daef5ef7ba0d3c7e.html

《天津科技大学 - - 数据库系统试卷及答案.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式