2005-2006(2)数据库系统原理试题(A)参考答案及评分标准

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2005-2006(2)数据库系统原理试题(A)参考答案及评分标准

一、填空题(每空1分,共14分)

1、数据结构

2、元组

3、实体完整性参照完整性

4、1NF

5、数据字典

6、B R+B R B S B S+B R B S

7、可串行的

8、RAID

9、动态Hash方法可扩展Hash方法

10、并发控制技术数据库恢复技术

二、选择题(每题1分,共10分)

1、D

2、A

3、A

4、B

5、C

6、C

7、C

8、C

9、C 10、A

三、简答题(每题4分,共16分)

1.可以表示任何关系代数操作的5种基本代数操作是什么?

答: ⋃ , - , ⨯ , σ , π

注:1个1分,写对4个即可得4分

2.关系数据库中常用的连接操作的实现算法有哪些?

答:循环嵌套连接算法(1分)、排序合并连接算法(1分)、hash连接算法(1分)、索引连接算法(1分)。

3.简述B树和B+树的区别。

答:(1)B+树的叶子节点链在一起(2分)。(2)B+树的内节点不存放数据指针(2

分)。

4.什么是数据库事务?什么是数据库事务的原子性?

答:一个存取或更改数据库的程序的运行称为数据库事务(2分)。事务中的所有操作要么全部被成功的完成且这些操作的结果被永久地存储到数据库中,要么这

个事务对数据库和其它事务没有任何影响。这种性质称为事务的原子性(2分)。

四、综合题(每题12分,共60分)

(一)已知关系S,P,J,SPJ的关系模式为:

S(SNO,SN,CITY)

P(PNO,PN,COLOR)

J(JNO,JN,CITY)

SPJ(SNO,JNO,PNO,QTY)

其中:SNO为供应商号,SN为供应商姓名,CITY为所在城市;PNO为零件号,PN为零件名称,COLOR为颜色;JNO为工程项目号,JN为工程项目名称;QTY为数量。

1、试用关系代数语言完成下列查询:求出使用全部零件的工程项目名称。

∏JN((∏JNO,PNO(SPJ)÷∏PNO(P)∏JNO,JN(J))(4分)

2、试用SQL语言完成下列查询:把零件号为P2的零件重量增加5,颜色改为黄色。

UPDATE P

SET WEIGHT=WEIGHT+5,COLOR=’黄色’

WHERE PNO=’P2’;(4分)

3、试用SQL语言完成下列查询:取出1个以上供应商提供的零件号。

SELECT PNO

FROM SPJ

GROUP BY PNO

HA VING COUNT(SNO)≥1 (4分)(二) 设某商业集团数据库有三个实体集。一是“商店”实体集,属性有商店编号、商店名、地址等;二是“商品”实体集,属性有商品编号、商品名、规格、单价等;三是“供应商”实体集,属性有供应商编号、供应商名、地址等。

商店与商品间存在“销售”联系,每个商店可销售多种商品,每个商品也可放在多个商店销售,每个商店销售一种商品,有月销售量;供应商与商品间存在着“供应”联系,每个供应商供应多种商品,每种商品可以向多个供应商订购。供应商供应商品给每个商店有月供应量。

(1)试画出E-R图,并在图上注明属性。

(2)将E--R图转换成关系模型,并指明主键和外键。

(1)E-R图如图所示。

(6分,其中实体2分、联系2分、属性2分)

(2)此E--R图转换成的关系模型如下

商店(商店编号,商店名,地址)主码为商店编号

供应商(供应商编号,供应商名,地址)主码为供应商编号

商品(商品编号,商品名,规格,单价)

销售(商店编号,商品号,月销售量)

主码为(商店编号,商品号),外码为商店编号和商品号

供应(供应商编号,商店编号,月供应量)

主码为(供应商编号,商店编号),外码为供应商编号,商店编号

共6分,由于学生的写法多样,教师根据具体情况给分。

(三)1.设关系模式R 其中:U={A, B, C, D, E, P}

F={A→B,C→P,E→A,CE→D}

求出R的所有候选关键字。

解:由计算可知:(CE)的闭包= {ABCDEP}

而C的闭包={CP}

E的闭包={ABE} (2分)

所以:R的候选键为:CE。(2分)

2.判断下面的关系模式最高属于第几范式),并说明理由。

R({A,B,C},{AC→B,AB→C,B→C})

答:是1NF ,(2分)因为该关系的候选键之一为AB, 又因为有B→C,存在部分函数依赖(2分),所以,该关系为1NF.

3.设关系R具有属性集合{O, I, S, A, B},函数依赖集合{I->B, IS->A, A->O}。把R分解成3NF,并使其具有无损连接性和函数依赖保持性。

答:{IB,ISA,AO}(4分)

(四) 设文件F具有10000个记录,每个记录50字节,其中10字节用来表示文件的键值。每个磁盘块大小1000字节,指向磁盘块的指针占5字节,不允许记录跨两个块。

(1)如果为文件F建立简单hash索引,使用100个hash桶,则桶目录需要多少磁盘块?平均每个桶需要多少磁盘块?

答:(1)1 (2)10000个记录/100个桶=100个记录每桶,(2分)100个记

录×50字节每记录/1000字节每块=5块(2分)

(2)如果为文件F建立B+树索引,各磁盘块尽量装满,需要多少磁盘块存储索引?

答:求秩D:5D+10(D+1)<=1000 => D=67 (2分)

即每个叶节点能保存D-1=66个键值。所以叶节点数为⎡10000/66⎤

=152个。(2分)

上一层的内节点同样有67个指针,是一个67叉的节点,

⎡10000/67⎤=3,⎡3/67⎤=1(2分)

因此B+树的节点总数为152+3+1=156个。即需要156个磁盘块

存储B+树索引。(2分)

(五) 对于教学数据库S(S#,SNAME,AGE,SEX),SC(S#,C#,GRADE),C(C#,CNAME,TEACHER)。现有一个查询:检索至少学习W ANG老师所授一门课程的男学生学号和姓名。

1.给出该查询的关系代数表达式,并画出该表达式构成的语法树。

2. 使用启发式优化算法对语法树进行优化,得到优化的语法树。

解:(1) 关系代数表达式:

∏ S#,SNAME (σS.S#=SC.S#∧SC.C#=C.C#∧S.SEX=’男’ ∧teacher=’wang’(S×SC×C)) (3分)

∏ S#,SNAME

σS.S#=SC.S#∧SC.C#=C.C#∧S.SEX=’男’ ∧teacher=’wang’

×

× c

S SC (3分)

相关文档
最新文档