17,382
社区成员




SQL> create or replace trigger record_ABC
2 before insert or update or delete
3 on ABC
4 delcare
5 l_action varchar2(30);
6 begin
7 if INSERTING then
8 l_action :='INSERT';
9 elsif UPDATING then
10 l_action :='UPDATE';
11 elsif DELETING then
12 l_action :='DELETE';
13 end if;
14 insert into ABC_log(uname,uaction)
15 values(user,l_action);
16 end record_ABC;
17 /
delcare
*
第 4 行出现错误:
ORA-04079: 无效的触发器说明
SQL> create or replace trigger record_ABC
2 before insert or update or delete
3 on ABC
4 begin
5 if INSERTING then
6 insert into ABC_log(uname,uaction)
7 values(user,'INSERT');
8 elsif UPDATING then
9 insert into ABC_log(uname,uaction)
10 values(user,'UPDATE');
11 elsif DELETING then
12 insert into ABC_log(uname,uaction)
13 values(user,'DELETE');
14 end if;
15 end record_ABC;
16 /
触发器已创建
create or replace trigger record_ABC
before insert or update or delete
on ABC for each row
delcare l_action varchar2(30);
begin
....
end;
/