山东科技大学数据库原理试卷A与参考答案及评分标准

山东科技大学泰山科技学院 2012 —2013 学年第一学期

《数据库原理》考试试卷(A卷)

班级 姓名 学号 题号 得分 一 二 三 四 五 总得分 评卷人 审核人 一、填空题(10分,每题1分) 1、数据库系统的核心是____________ 。

2、两段锁协议中的两段指的是:____________ 和 ___________ 。 3、数据管理技术经过了 、 和 三个阶段。

4、索引的建立有利也有弊。建立索引可以___________,但过多地建立索引会__________。

5、_____________是一个非常特殊但又非常有用的函数,它可以计算出满足约束条件的一组条件的行数。

3、数据库恢复是将数据库从 状态恢复到 的功能。 4、数据库系统在运行过程中,可能会发生故障。故障主要有 、 、介质故障和 四类。

8、在SQL中, ____________ 子句用来消除重复出现的元组。

9、在关系模式 R(U) 中,如果 X → Y , Y → Z ,且 Y 不是 X 的子集,不存在 X ←→ Y 的情况,则称 Z ____________依赖于 X 。

10、判断一个并发调度是否正确,可用 __________ 概念来衡量。

二、选择题(20分,每题1分)

1、三个模式之间存在下列映射关系,将正确的填入括号中 ( )

A. 外模式 / 内模式 B. 外模式 / 模式 C. 模式 / 模式 D. 内模式 / 外模式 2、数据的逻辑独立性是指 ( )

A. 存储结构与物理结构的逻辑独立性 B. 数据与存储结构的逻辑独立性 C. 数据与程序的逻辑独立性 D. 数据元素之间的逻辑独立性 3、以下关于外码和相应的主码之间的关系,正确的是 ( )

A. 外码并不一定要与相应的主码同名 B. 外码一定要与相应的主码同名

C. 外码一定要与相应的主码同名而且唯一

D. 外码一定要与相应的主码同名,但并不一定唯一 4、数据库和文件系统的根本区别在于:( )

A.提高了系统效率 B.方便了用户使用 C.数据的结构化 D.节省了存储空间

第 1 页/共 4 页

5、关系代数运算是以( )为基础的运算 。

A.关系运算 B.谓词演算 C.集合运算 D.代数运算 6、关系的码不能为空属于DBS的 ( )

A.完整性措施 B.安全性措施 C.物理安全措施 D.恢复措施

7、有12个实体类型,并且它们之间存在着15个不同的二元联系,其中4个是1:1联系类型 ,5个是1:N联系类型,6个M:N联系类型,那么根据转换规则,这个ER结构转换成的关系模式最少有 ( )

A.17个 B.18个 C.23个 D.27个 8、消除了传递函数依赖的2NF的关系模式,必定是( )。 A.1NF B.2NF C.3NF D.BCNF

9.在( )中一个结点可以有多个双亲,结点之间可以有多种联系。 A.网状模型 B.关系模型 C.层次模型 D.以上都有

10、现有如下关系:患者(患者编号,患者姓名,性别,出生日期,所在单位)医疗(患者编号,医生编号,医生姓名,诊断日期,诊断结果)其中,医疗关系中的外码是( )。 A.患者编号 B.患者姓名 C.患者编号和患者姓名 D.医生编号和患者编号 11、下列哪类数据不适合创建索引? ( )

A.经常被查询搜索的列,如经常在where子句中出现的列 B.是外键或主键的列

C.包含太多重复选用值的列 D.在order by子句中使用的列 12、SQL中,“DELETE FROM 表名”表示 ( )

A.从基本表中删除所有元组 B.从基本表中删除所有属性 C.从数据库中撤消这个基本表 D.从基本表中删除重复元组 13、设有两个关系R(A,B)和S(B,C),与下列SELECT语句

SELECT A,B FROM R

WHERE B NOT IN(SELECT B FROM S

WHERE C='C56');

完全等价的关系代数表达式是 ( ) A.πA,B(σC≠'C56'(R?S)) B.πA,B(R ? S) C.R-πA,B(σC= 'C56'(R?S)) D.R-πA,B(σC≠'C56'(R?S)) 14、设有两个事务T1、T2,其并发操作如下所示,下列评价正确的是 。

A.该操作不存在问题 数据

第 2 页/共 4 页

B.该操作丢失修改 C.该操作不能重复读 D.该操作读“脏”

T1 ①读A=100 A=A*2写回 ② ③ROLLBACK 恢复A=100 T2 读A=10 15、解决并发操作带来的数据不一致性总是普遍采用 。 A.封锁

B.恢复

C.存取控制

D.协商

16、若事务T对数据R已经加X锁,则其他事务对数据R 。

A.可以加S锁不能加X锁

D.不能加任何锁

B.不能加S锁可以加X锁 C.可以加S锁也可以加X锁

17、下列聚集函数中不忽略空值的是:( )

A.SUM(列名) B.MAX(列名) C.COUNT(*) D.AVG(列名`)

18、若数据库中只包含成功事务提交的结果,则此数据库就称为处于 状态。

A.安全

B、.一致

C.不安全

D.不一致 答

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

A.事务故障

B.系统故障

C.介质故障

D.运行故障

20若系统在运行过程中,由于某种硬件故障,使存储在外存上的数据部分损失或全部损失,这种情况称为 。

A.事务故障

B.系统故障

C.介质故障

D.运行故障

三、简答题(每题5分,共20分)

1、数据库的恢复技术有哪些?

2、叙述数据库中死锁产生的原因和解决死锁的方法。 3、判断下列模式属于哪个范式(最高范式),并说明理由。 R({S#,SD,SLL,SN},{S#→SD,S#→SN,S#→SL,SD→SL}) 4、设教学数据库中,有两个基本表: 学生表:S(S#,SNAME,AGE,SEX) 学习表:SC(S#,C#,GRADE) 现有一个SQL语句: SELECT S#

第 3 页/共 4 页

FROM S WHERE S# NOT IN (SELECT S# FROM SC WHERE C# IN('C2','C4'));

试写出与此语句等价的汉语查询语句及关系代数表达式。

四、求解题(共30分,每小题5分)

现有如下关系模式:其中,Teacher(Tno,Tname,Tel,Dpartment,Bno,Bname,BorrowDate,Rdate,Backup)。 Tno一教师编号, Tname一教师姓名, Tel一电话, Department一所在部门, Bno一借阅图书编号, Bname一书名, BorrowDate一借书日期, Rdate一还书日期, Backup一备注

该关系模式的属性之间具有通常的语义,例如,教师编号函数决定教师姓名,即教师编号是惟一的,图书编号是惟一的,等等。

1.教师编号是候选码吗? 说明判断的理由是什么。 2.写出该关系模式的主码。

3.该关系模式中是否存在部分函数依赖?如果存在,请写出其中两个。 4.说明要将一个1NF的关系模式转化为若干个2NF关系,需要如何做? 5.该关系模式最高满足第几范式?并说明理由。 6.将该关系模式分解为3NF。

五、设计题(共20分)

设某商业集团关于商店销售商品的数据库中有三个基本表: 商店 SHOP(S#,SNAME,AREA,MGR_NAME) 其属性是商店编号,商店名称,区域名,经理姓名。 销售 SALE(S#,G# ,QUANTITY)

其属性是商店编号,商品编号,销售数量。

商品 GOODS(G#,GNAME,PRICE) 其属性是商品编号,商品名称,单价。

1、(5分)试写出下列查询的关系代数表达式:查询销售“冰箱”的商店的编号和商店名称。 2、(5分)试写出上题的SELECT语句表达形式。 3、(5分)试写出下列操作的SQL语句: 从SALE表中,把“开开商店”中销售单价高于1000元的商品的销售元组全部删除。 4、(5分)试写出下列操作的SQL语句:

统计区域名为“EAST”的所有商店销售的每一种商品的总数量和总价值。

要求显示(G#,GNAME,SUM_QUANTITY,SUM_VALUE),其属性为商品编号、商品名称、销售数量、销售价值。

第 4 页/共 4 页

《数据库原理》考试试卷(A卷)(2013)

参考答案与评分标准

一、填空题:(10分,每题一分)

1、物理

2、扩展阶段,收缩阶段 3、不可重复读

4、commit rollback 5、层次模型

6、错误 某一已知的正确状态

7、①事务故障②系统故障 ③计算机病毒

8、日志

9、DISTINCT 10、可串行化

评分标准:共计15分,每空1分;错填、漏填每空扣1分。 二、选择题(20分,每题1分)

1-5 B C C C A 6-10 B C A A A 11-15 D A D B C 评分标准:共计20分,每题1分;错一题扣1分。 三、简答题 (每题5分,共20分)

1、数据转储和登录日志文件是数据库恢复的基本技术。当系统运行过程中发生故障,利用转储的数据库后备副本和日志文件就可以将数据库恢复到故障前的某个一致性状态。

2、死锁产生的原因:封锁可以引起死锁。比如事务T1封锁了数据A,事务T2封锁了数据B。T1又申请封锁数据B,但因B被T2封锁,所以T1只能等待。T2又申请封锁数据A,但A已被T1封锁,所以也处于等待状态。这样,T1和T2处于相互等待状态而均不能结束,这就形成了死锁。解决死锁的常用方法有如下三种:(1)要求每个事务一次就要将它所需要的数据全部加锁。(2)预先规定一个封锁顺序,所有的事务都要按这个顺序实行封锁。(3)允许死锁发生,当死锁发生时,系统就选择一个处理死锁代价小的事务,将其撤消,释放此事务持有的所有的锁,使其他事务能继续运行下去。

3、2NF(2分),由题目可知,关系的码为S#,这里存在对码的传递依赖(3分) 4、答:查询语句为:

检索至少不选修编号为C2和C4课程的学生学号。(3分)

关系代数表达式为:

π

S#(S)-

π

S#(

σ

C#= 'C2'∨C#= 'C4'(S

?SC))(4分)

第 5 页/共 4 页

(注意:此处,“不选修C2和C4课程”的对立面是“选修C2或C4课程”) 评分标准:共计20分,每题5分;按照回答问题的准确和全面程度酌情给分。 四、求解题 (共30分)

1、不是,根据候选码的定义,码能确定所有的属性,而它不能确定书名。 2、Tno一教师编号 Bno一借阅图书编号BorrowDate一借书日期 3、存在。Tno->Tname,Bno->Bname

4、要进行模式分解,消除其存在的部分依赖。

5、该关系模式属于1NF,因为存在非主属性队码的部分依赖。 6、Teacher(Tno,Tname,Tel,Dpartment);BOOK(Bno,Bname)BR(Tno,Bno, BorrowDate,Rdate,Backup)。

评分标准:共30分。每小题5分。按照叙述定义的准确和全面程度酌情给分。 五、设计题(30分) 1.解:关系代数表达式:π

S#,SNAME(

σ

GNAME='冰箱'(SHOP

?SALE?GOODS))(5分)

2.解:SELECT语句如下: SELECT A.S#,SNAME

FROM SHOP A,SALE B,GOODS C

WHERE A.S#=B.S# AND B.G#=C.G# AND GNAME='冰箱'; (5分)

3.解:DELETE FROM SALE

WHERE S# IN(SELECT S# FROM SHOP

WHERE SNAME='开开商店') AND G# IN(SELECT G#

FROM GOODS

WHERE PRICE>1000);(5分)

4.解:SELECT C.G#,GNAME,SUM(QUANTITY)AS SUM_QUANTITY,

PRICE*SUM(QUANTITY)AS SUM_VALUE

FROM SHOP A,SALE B,GOODS C

WHERE A.S#=B.S# AND B.G#=C.G# AND AREA='EAST' GROUP BY C.G#,GNAME;

(注:SELECT子句中的属性C.G#,GNAME应在分组子句中出现)(5分) 评分标准:共30分。每小题按照叙述定义的准确和全面程度酌情给分。

第 6 页/共 4 页

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4