由于初学oracle 还不太懂 上网没有找到类似的问题 希望朋友耐心教导(1)student表中数据的update delete inser 都要在日志表log中监听到
(2)对student表中sno字段写一个存储过程 返回当天的所有操作 (cursor)--创建日志表 log
create table log(
id number primary key,
beforName varchar2(20),
afterName varchar2(20),
thisDate default syadate,
oper char check(oper in('update','insert','delete'))
);
--创建学生表student
create table student(
sno number,
sname varchar2(20)
);
(2)对student表中sno字段写一个存储过程 返回当天的所有操作 (cursor)--创建日志表 log
create table log(
id number primary key,
beforName varchar2(20),
afterName varchar2(20),
thisDate default syadate,
oper char check(oper in('update','insert','delete'))
);
--创建学生表student
create table student(
sno number,
sname varchar2(20)
);
create or replace trigger trib_log
after insert or update or delete on student
for each row
declare
integrity_error exception;
errno integer;
errmsg char(200);
begin
if inserting then
insert into log(afterName) values (:NEW.beforName);
elsif updating then
insert into log(afterName) values (:NEW.beforName);
elsif deleting then
insert into log(beforName) values (:OLD.beforName);
end if;
exception
when integrity_error then
raise_application_error(errno, errmsg);
end;照着改一改就行了