2016-2017年广东海洋大学大型数据库真题 开卷考试
具体分值分布可能会有所出入,并无多大影响,只要出卷老师不同,再好也是白搭。 一、选择题(40分)
注:选择题80%-90%出现在书本课后习题。 二、填空题(20分)
注:天空题80%-90%出现在书本课后习题。 三、程序填空题(20分) 如:
1完成以下PL/SQL块的功能是:创建一个触发器 biu_job_emp,无论用户插入记录, 还是修改 EMP 表的 job 列,都将用户指定的job列的值转换成大写。
CREATE OR REPLACE TRIGGER biu_job_emp BEFORE INSERT OR UPDATE OF job ON emp_ FOR EACH ROW BEGIN
:NEW.job :=_UPPER(:NEW.job)_; END;
四、解释程序(10分)
注:有一段程序,要求在注明//的地方写出写出注释,内容也是和触发器有一定的联系。
下面这段有一点参考价值,如//就是考到的注释,只是不齐的,其他以外的内容也不怎么相同。
CREATE OR REPLACE PROCEDURE Rise_sal IS v_empno
Emp.empno%type; v_sal
Emp.sal%type;
V_ErrorText Varchar(200);
CURSOR cursor_sal //定义游标CURSOR cursor_sal IS
_______①_______ // BEGIN ______②
________; //
打
开
标
LOOP FETCH cursor_sal _____
_______;
EXIT WHEN cursor_sal%NOTFOUND;//逐行提取据 IF v_sal<1500 THEN
UPDATE Emp SET sal= sal*0.20+Sal //更新数据 END LOOP;
游③
数 五、编程题(10分) 大概意思:
用触发器实现删除一个表中的数据后级联删除另一个表的相关内容。