错误在哪里,在我看来很好,但我得到了错误。
我试过了,这个引用旧的和新的一样新。
也许错误出在变量中。
SQL> create or replace trigger before_delete
2 before delete
3 on accounts
4 declare
5 v_username varchar2(20);
6 begin
7 select user into v_username
8 from dual;
9 insert into accounts_history
10 (
11 id,
12 new_name,
13 old_name,
14 new_amount,
15 old_amount,
16 change_date,
17 delted_by
18 )
19 values
20 (
21 :old.acc_id
22 :old.acc_name
23 :old.acc_name
24 :old.acc_amount
25 :old.acc_amount
26 sysdate,
27 v_username
28 );
29 end;
30 /
insert into accounts_history
*
ERROR at line 9:
ORA-04082: NEW or OLD references not allowed in table level triggers