F1和F2中的函数依赖都是非平凡的,并且决定因素是候选码,所以上述关系模式是BCNF。
得 分 阅卷人 五、综合题(15分)
复查人
某医院病房管理系统中,包括四个实体型,分别为: 科室:科名,科地址,科电话 病房:病房号,病房地址
医生:工作证号,姓名,职称,年龄 病人:病历号,姓名,性别 且存在如下语义约束:
① 一个科室有多个病房、多个医生,一个病房只能属于一个科室,一个医
生只属于一个科室;
② 一个医生可负责多个病人的诊治,一个病人的主管医生只有一个; ③ 一个病房可入住多个病人,一个病人只能入住在一个病房。 注意:不同科室可能有相同的病房号。 完成如下设计:
(1)画出该医院病房管理系统的E-R图;(5分) (2)将该E-R图转换为关系模型;(5分)
(要求:1:1和1:n的联系进行合并)
(3)指出转换结果中每个关系模式的主码和外码。(5分) 病房号 病房地址 科名 1 组成 科地址 科电话 (1)本题的E-R图如下图所示。
病房 1 入住 n 病人 n 科室 1 拥有 n n 诊治 1 医生
某医院病房管理系统的基本E-R图
(2)转化后的关系模式如下: 科室(科名,科地址,科电话) 病房(病房号,病房地址,科名)
医生(工作证号,姓名,职称,年龄,科名)
病人(病历号,姓名,性别,主管医生,病房号,科名) (3)每个关系模式的主码、外码如下: 科室:主码是科名;
病房:主码是科名十病房号,外码是科名; 医生:主码是工作证号,外码是科名;
病人:主码是病历号,外码是科名十病房号。
试题三参考答案与评分标准
一、选择题(每题1.5分)
1.B 2.C 3.A 4.C 5.D 6.B 7.B 8.A 9.D 10.C 11.D 12.B 13.A 14.C 15.B 16.C 17.C 18.C 19.D 20.C
二、填空题(每题1分)
1. 外模式 2. 外码 3. 集合 4. 班级 IS NULL σF(R×S) 6. IN 7. 定义 8. 物理 9. 封锁 10. 二
5.
三、简答题
1、参考答案:
答:数据库管理系统(DBMS)是位于操作系统与用户之间的一个数据管理软件,
它主要功能包括以下几个方面:
(1)数据定义功能:DBMS提供数据描述语言(DDL),用户可通过它来定
义数据对象。
(2)数据操纵功能:DBMS还提供数据操纵语言(DML),实现对数据库的
基本操作:查询、插入、删除和修改。
(3)数据库的运行管理:这是DBMS运行时的核心部分,它包括并发控制,
安全性检查,完整性约束条件的检查和执行,发生故障后的恢复等。
(4)数据库的建立和维护功能: 它包括数据库初始数据的输入及转换,数
据库的转储与恢复,数据库的重组功能和性能的监视与分析功能等。 评分标准:四个关键词每个1分,细节叙述1分。 2、参考答案:
数据库设计分以下六个阶段: (1)需求分析 (2)概念结构设计 (3)逻辑结构设计 (4)物理结构设计 (5)数据库实施
(6)数据库运行和维护
评分标准:六个关键词每错一个扣1分。
3、参考答案:
(3) 一级封锁协议是:事务T在修改数据R之前必须先对其加X锁,直到
事务结束才释放。一级封锁协议能够解决“丢失修改”问题。
(4) 二级封锁协议是:一级封锁协议加上事务在读取数据R之前必须先对
其加S锁 ,读完后即可释放S锁。二级封锁不仅可以解决“丢失修改”问题,而且可以解决读“脏“数据问题。
(5) 三级封锁协议是:一级封锁协议加上事务在读取数据R之前必须先对
其加S锁,直到事务结束才释放。三级封锁协议不仅解决了“丢失修改”、读“脏”数据问题,而且进一步解决了“不可重复读”问题。 评分标准:
各级封锁协议内容各1分,应着重三个方面,何时加锁,加什么锁,锁何时
释放,缺少任一点都要扣0.5分;各级封锁协议能解决哪些数据不一致问题各1分。
四、设计题
1、参考答案:
SELECT 课程号,MAX(成绩) FROM SC GROUP BY 课程号 评分标准:
MAX集函数和GROUP BY子句各1.5分,其它1分。
2、参考答案:
关系代数:πSN(?PN='P1' (SSPP)) SQL: SELECT SN FROM S, SP, P WHERE S.SNO=SP.SNO AND
P.PNO=SP. PNO AND PN='TV'
评分标准:
关系代数:SSQL:
3、参考答案:
(1)SELECT B FROM R, S
WHERE R.A=S.A AND C>50 (2)UPDATE R
SET B=’b4’ WHERE A IN
(SELECT A
FROM S WHERE C=40) SP
P2分,SP必须书写在S、P之间,否则不得分,对三
个关系作正确的投影再做连接也正确;πSN、?PN='P1'各1分。 WHERE子句的三个条件各1分,FROM子句1分,SP必须书写在S、P之间,否则不得分。
评分标准:
(1)WHERE子句的两个条件各1分;其它1分。
(2)UPDATE1分;SET子句1分;A 1分;IN 1分;内层子查询1分。
4、参考答案: