Oracle数据库应用 复习题及答案

发布时间 : 星期六 文章Oracle数据库应用 复习题及答案更新完毕开始阅读

CURSOR staff3_cursor IS SELECT * FROM staff WHERE ssex='男'; --声明游标

c1 staff3_cursor%rowtype;--定义参考游标结构的记录变量 BEGIN

select count(*) into n from staff where ssex='男'; OPEN staff3_cursor; --打开游标 FOR i in 1..n LOOP

FETCH staff3_cursor into c1; --提取游标数据行 DBMS_OUTPUT.PUT_LINE(c1.sno||', ' ||c1.sname||','||c1.sbirthday); END LOOP;

CLOSE staff3_cursor; --关闭游标 END;

7、写出下列存储过程的功能: CREATE PROCEDURE staff2_pro

(c1 IN CHAR,v1_staff OUT staff%ROWTYPE)

AS BEGIN

SELECT * INTO v1_staff FROM staff

WHERE sno=c1; END;

8、写出下列触发器的功能:

13

CREATE TRIGGER staff_trig

AFTER INSERT OR UPDATE OR DELETE ON staff FOR EACH ROW BEGIN

IF INSERTING THEN

DBMS_OUTPUT.PUT_LINE('正在向staff表插入数据!'); ELSIF UPDATING THEN

DBMS_OUTPUT.PUT_LINE('正在staff中更新数据!'); ELSIF DELETING THEN

DBMS_OUTPUT.PUT_LINE('正在staff删除数据!'); END IF; END;

六、编写程序

1、利用标准CASE语句根据grade变量的值ABCDE分别输出“优秀”、“良好”、“中等”、“及格”、“不及格”。

2、使用while循环,编程计算并输出n! 。n从键盘输入。 3、将第五题中第6小题改写成带参数游标并使用while循环来实现。 4、将第五题中第6小题改写成不带参数的游标FOR循环来实现。 5、编写存储过程swap交换两个参数,并写出调用程序。 6、利用存储函数staff_func重做第五题第7小题。

14

参 考 答 案

一、选择题 1. A 2. B 3. BA 4. D 5. B 6. A 7. D 8. C 9. A 10. A 11. B 12. C 13. B 14. B 15. B 16. D 17. B 18. C 19. A 20. D

15

21. A 22. D 23. C 24. B 25. B 26. C 27. D 28. B 29. C 30. C

二、填空题

1. 方案/模式 2. USER_SOURCE 3. 物理结构;逻辑结构;

4. 用户进程;服务器进程;后台进程; 5. 系统权限;对象权限; 6. GRANT; REVOKE;

7. 过程语言PL;结构化查询语言SQL 8. 无名块;命名的子程序; 9. 表空间;数据文件;

10. 同义词;同义词;同义词所代表的对象;同义词16

联系合同范文客服:xxxxx#qq.com(#替换为@)