全国计算机技术与软件专业技术资格(水平)考试
数据库系统工程师全真预测试卷(一)下午试题
(考试时间14:00--16:30 共150分钟)
本试卷的5道试题都是必答题,请全部解答,每题15分,满分75分。
试题一
工厂包括厂名和厂长名)需建立一个管理数据库存储以下信息:
(1)一个厂内有多个车间每个车间有车间号、车间主任姓名、地址和电话.
(2)一个车间有多个工人,每个工人有职工号、姓名、年龄、性别和工种,
(3)一个车间生产多种产品,产品有产品号和价格。
(4)一个车间生产多种零件,一个零件也可能为多个车间制造。零件有零件号、重量和价格。
(5)一个产品由多种零件组成,一种零件也可装配出多种产品。
(6)产品与零件均存仓库中。
(7)厂内有多个仓库,仓库有仓库号、仓库主任姓名和电话。
试问:
[问题1]
画出该系统的E-R图。
[问题2]
给出相应的关系模式。
[问题3]
画出该系统的层次模型图。
试题二
如图所示给出的是一个调度的事件序列。该调度包含T1,T2,…,T2等12个事务,A,B,…,H为数据库中的数据项,假定“读i”(i=A,B,…,H)成功,则获得i上的一个S锁,而“修改i”成功时,则将锁升级为X锁。又假定所有锁都保持到事务结束,那么,在时刻t36是否存在死锁?并分析哪些事务处于等待另一个事务的状态。
| 时间 | 事务 | 操作 | 时间 | 事务 | 操作 |
| t1 | T1 | 读A | t19 | T9 | 修改G |
| t2 | T2 | 读B | t0 | T8 | 读E |
| r3 | T1 | 读C | t1 | T7 | COMMIT |
| t4 | T4 | 读D | t2 | T9 | 读H |
| t5 | T5 | 读A | t3 | T3 | 读G |
| t6 | T2 | 读E | t4 | T10 | 读A |
| t7 | T2 | 修改E | t5 | T9 | 修改H |
| t8 | T3 | 读F | t6 | T6 | COMMIT |
| t9 | T2 | 读F | t27 | T11 | 读C |
| t10 | T5 | 修改A | t28 | T12 | 读D |
| t11 | T1 | COMMIT | t29 | T12 | 读C |
| t12 | T6 | 读A | t30 | T2 | 修改F |
| t13 | T5 | ROLLBACK | t31 | T11 | 修改C |
| t14 | T6 | 读C | t32 | T12 | 读A |
| t15 | T6 | 修改C | t33 | T10 | 修改A |
| t16 | T7 | 读G | t34 | T12 | 修改D |
| t17 | T8 | 读H | t35 | T4 | 读G |
| t18 | T9 | 读G | t36 | 1 | 1 |
一个调度的事件序列
试题三
如图所示是有关大学(university)和学生(student)信息的对象联系图。
[问题1]
试用ORDB的定义语言定义这个数据库。

大学和学生信息的对象联系图
[问题2]
试用ORDB的查询语言写出下列查询的SELECT语句:检索每个大学里籍贯为本地的学生,要求显示大学名、城市、学生身份证号和学生姓名。
试题四
阅读下列说明和E-R图5,回答问题1至问题3,把解答写在答卷的对应栏内。
[说明]设有下列关于教务管理系统的E-R图。图中矩形表示实体,圆表示属性,双圆表示关键属性,菱形表示实体间的联系。为了答题的方便,图中的实体和属性同时给出了中英文两种名字,回答问题时只须写出英文名即可。
[问题1]
写出与上述E-R图对应的关系模式,并且下划线标明相应的关键字。
[问题2]
问题1中的关系模型属于第几范式?如果属于第三范式,则说明理由:如果不属于第三范式,则将它化为第三范式(回答时只须写出修改的部分)。
[问题3]
试用SQL语言定义教师(TEACHER)模式。回答时字段的数据类型以及题中未指明的名字由考生自己定义。
试题五
为了满足大量数据传输的需要,有时候需要把数据库中的数据分页传送,比如说,传送1000条数据时,可以一次传送10条数据,等到用户发出需求时再传送下10条数据,如此循环。试实现如下功能:只有当用户第—次点击脚本的页时,才从数据库中获取记录集,然后把记录集作为一个断开的记录集存储在一个Session变量中。这个Session变量用于在用户翻页时提供记录集。