试题二
参考答案与评分标准
一、选择题(每题2分) 1.D 2.C 3.D 4.A 5.B 6.D 7.C 8.B 9.C 10.B 11.C 12.D 13.A 14.D 15.C 16.B 17.B 18.A 19.C 20.A 二、填空题(每空1分)
1. 主属性 空值(或NULL) 2. 外码 3. GRANT 4. R-(R-S) 5. 数据库管理系统(或DBMS) 数据库管理员(或DBA) 6. 概念结构设计阶段 物理结构设计阶段 7. 2
三、简答题(本大题共3小题,第1题4分,第2、3题各3分,共10分) 1、参考答案:
答: 数据:描述事物的符号记录。(1分)
数据库:长期存储在计算机内的、有组织的、可共享的数据集合。(1分)
数据库管理系统:是位于用户与操作系统之间的具有数据定义、数据操纵、数据库的运行管理、数据库的建立和维护功能的一层数据管理软件。(1分)
数据库系统:在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。(1分)
评分标准:四个基本概念各1分,意思表达正确即可给分。 2、参考答案:
答:视图是从一个或几个基本表导出的表,它与基本表不同,是一个虚表,数据库中只存
放视图的定义,而不存放视图对应的数据,这些数据存放在原来的基本表中,当基本表中的数据发生变化,从视图中查询出的数据也就随之改变(2分)。视图一经定义就可以像基本表一样被查询、删除,也可以在一个视图之上再定义新的视图,但是对视图的更新操作有限制(1分)。
评分标准:意思表达正确即可给分。 3、参考答案: 答:故障主要有下面三种类型: (1)事务故障(1分) (2)系统故障(1分) (3)介质故障(1分)
评分标准:关键字“事务”、“系统”、“介质”中有错别字一律该项不给分。 四、设计题 1、
(1)参考答案:
πJNO(J)- πJNO (?CITY='天津' (S)
SPJ
?COLOR='红' (P))
评分标准:
两个关系的差1分;三个表的自然连接SSPJP1分,少任意一个关系不给分;?CITY='天津'和?COLOR='红'两个条件1分,任意一个错误不给分。
(2)参考答案:
πPNO,JNO(SPJ)÷πPNO (?SNO='S1' (SPJ)) 评分标准:
两个关系的除1分;πPNO,JNO和πPNO1分,任意一个错误不给分;?SNO='S1'1分。 (3)
参考答案1:
SELECT DISTINCT JNO
FROM SPJ,P
WHERE SPJ.PNO=P.PNO AND
COLOR='红'AND JNO='J1'; 评分标准:
SELECT DISTINCT JNO FROM SPJ,P 1分,少DISTINCT扣0.5分,SPJ,P中少任一表不给分;WHERE SPJ.PNO=P.PNO AND COLOR='红'AND JNO='J1'1分,3个条件每错一个扣0.5,扣完1分为止。
参考答案2:
SELECT DISTINCT SNO
FROM SPJ
WHERE JNO='J1' AND
PNO IN
(SELECT PNO FROM P
WHERE COLOR='红');
评分标准:
SELECT DISTINCT JNO FROM SPJ 1分,少DISTINCT扣0.5分;WHERE JNO='J1' AND
PNO IN
(SELECT PNO FROM P
WHERE COLOR='红')1分,无JNO='J1'、PNO IN、SELECT PNO FROM
P WHERE COLOR='红'均扣0.5分,扣完1分为止。 (4)
参考答案1:
SELECT JNO
FROM J
WHERE JNO NOT IN (SELECT JNO FROM SPJ
WHERE SNO IN
(SELECT SNO FROM S
WHERE CITY='天津'));
评分标准:
SELECT JNO
FROM J
WHERE JNO NOT IN 和
SELECT JNO FROM SPJ
WHERE SNO IN
和
SELECT SNO FROM S
WHERE CITY='天津'
三层嵌套各1分,各嵌套内有错误则该项均不给分。
参考答案2:
SELECT JNO FROM J
WHERE NOT EXISTS (SELECT * FROM SPJ,S
WHERE SPJ.SNO=S.SNO AND
SPJ.JNO=J.JNO AND CITY='天津');
评分标准:
SELECT JNO FROM J
WHERE NOT EXISTS 1分; SELECT *
FROM SPJ,S 1分,SPJ,S少一个表不给分; WHERE SPJ.SNO=S.SNO AND
SPJ.JNO=J.JNO AND
CITY='天津'1分,三个条件少一个扣0.5,扣完1分为止。
参考答案3:
SELECT JNO
FROM J
WHERE NOT EXISTS (SELECT * FROM SPJ
WHERE SPJ.JNO=J.JNO AND EXISTS (SELECT *
FROM S
WHERE S.SNO=SPJ.SNO AND
CITY='天津'));
评分标准:
SELECT JNO
FROM J
WHERE NOT EXISTS 和
SELECT * FROM SPJ
WHERE SPJ.JNO=J.JNO AND EXISTS
和
(SELECT * FROM S
WHERE S.SNO=SPJ.SNO AND
CITY='天津'))
三层嵌套各1分,各嵌套内有错误则该项均不给分。
(5)参考答案:
UPDATE P SET COLOR='蓝' WHERE COLOR='红';
评分标准:
UPDATE P 0.5分;SET COLOR='蓝'1分;WHERE COLOR='红'0.5分。
(6)参考答案:
INSERT INTO SPJ VALUES('S2','P4','J6',400); 评分标准:
INSERT INTO SPJ1分;VALUES('S2','P4','J6',400)1分。 2、参考答案:
(1) 关系STUDENT是1NF,因为F中存在非主属性SNAME,SDEPT,MNAME对侯
选码(S#,CNAME)的部分函数依赖。 (2)
① 首先消除部分函数依赖(S#,CNAME)→SNAME,SDEPT,MNAME将关系分解为:
R1(S#,SNAME,SDEPT,MNAME),S#为候选码,
R1的函数依赖集为:
F1 = { S#→SNAME,SDEPT,MNAME,SDEPT→MNAME}
R2(S#,CNAME,GRADE),S#为候选码,
R2的函数依赖集为:
F2={(S#,CNAME)→GRADE}
② 在关系R1中存在非主属性MNAME对候选码S#的传递函数依赖S#→MNAME,
所以将R1进一步分解:
R11(S#,SNAME,SDEPT) ,S#为候选码,
R11的函数依赖集为: