计本06《大型数据库应用》--B--参考答案及评分标准

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
五、综合知识运用题(共26分)
1、(15分)
(1)(3分)
Select * from score(1分)
Where degree in (85, 86, 88)(2分)
另解:Select * from score where degree=85 or degree=88or degree=88
(2)(3分)
Select cno, max(degree)(1分)
from score(1分)
group by cno;(1分)
(3)(3分)
Select cno, avg(degree) from student, score(1分)
where student.sno=score.sno and student.class=‘95033’(1分)
as
begin
select avg(degree) into p_avg,(1分)
max(degree) into p_max,
min(degree) into p_min
from score(1分)
where cno=(select cno from course where cname=p_cname);(2分)
(15)分支(16)循环
三、简答题(12分)
1.解答:用户帐号拥有的对象集称为用户的方案(SCHEMA)。方案(模式)是为了便于数据的管理而设计的数据对象的逻辑组织单位,在方案下包括表、索引、视图、存储过程、触发器、同义词、序列、包等数据对象。(2分)
在Oracle中方案与用户的关系是一一对应的关系,即每一个方案有一对应的用户。(2分)
ComputeDegree(v_cname,v_avg, v_max, v_min);(2分)
dbms_output.put_line('平均分'||v_avg);(1分)
dbms_output.put_line('最高分'||v_max);
dbms_output.put_line('最低分'||v_min);
(3)数据操纵语言(4)数据控制语言
(5)DBWR(6)LGWR
(7)Commit (8) Rollback (9)SavePoint(说明:这三个答案次序可以交换)
(10)COUNT (11) SUM
(12) INSERT触发器(13) DELETE触发器(14) UPDATE触发器(说明:次序可以交换)
group by cno;(1分)
(4)(3分)
Select sno, sname from student(1分)
Where Birthday>To_date(‘1990/01/01’, ‘YYYY/MM/DD’));(1分)
(5)(3分)
Update score(1分)
set degree=degree+5 where cno=’3-105’ and(1分)
end ComputeDegree;
/*调用存储过程*/ (5分)
DECLARE(1分)
v_cname score.cname%TYPE;
v_avg score.degree%TYPE;
v_max score.degree%TYPE;
v_min score.degree%TYPE;
BEGIN
v_cname:=’大型数据库应用’;(1分)
END;
这些表。(1分)
(4)自动完成需要预先执行的任务。(1分)
Fra Baidu bibliotek(1分)
3.解答:一个用户如果要对某一数据库进行操作,必须满足以下三个条件:
(1)登录Oracle服务器时必须通过身份验证;(1分)
(2)必须是该数据库的用户或者是某一数据库角色的成员;(2分)
(3)必须有执行该操作的权限。(1分)
四、解答题(10分)
《大型数据库应用》课程试题参考答案及评分标准(中文试卷)
( B卷)
适用专业年级:计算机06级考试时间: 100分钟
命题人:曾敏
一、单选题(每题2分,共30分)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
C
B
D
C
A
B
D
D
B
C
D
D
A
C
D
二、填空题(每空1分,共16分)
(1) DB2 (2) Informix或Sybase、SQLServer
1.解答:不能。因为它是Sno是Score表的外键。要先删除从表Score中的所有200001后,才能删除主表的记录。(5分)
2.解答:能。因为它是删除从表中的数据,可以删除。(4分)
3.答案:命令执行后,主、从表中的‘200002’,会修改成”200010”。(5分),这是因为定义一主表的更新前触发器来修改从表中的值。(5分)
2.解答:使用存储过程的优点是:
(1)过程在服务器端运行,执行速度快。(1分)
(2)过程执行一次后代码就驻留在高速缓冲存储器,在以后的操作中,只需从高
速缓冲存储器中调用已编译代码执行,提高了系统性能。(1分)
(3)确保数据库的安全。可以不授权用户直接访问应用程序中的一些表,而是授
权用户执行访问这些表的过程。非表的授权用户除非通过过程,否则就不能访问
sno in (select sno from student where class=’95033’)(1分)
2、(11分)
/*定义存储过程*/ (6分)
create or replace procedure ComputeDegree(1分)
(p_cno in char, p_avg out number, p_max out number, p_min out number)(1分)
相关文档
最新文档