想实现如下的功能:(oracle 10g XE 运行在ubuntu系统中)
当从ZWXW表中删除一条数据后,自动插入ZWXW_BACKUP表中
触发器定义如下:
create or replace trigger trig_zwxw_delete
before delete on zwxw
begin
insert into zwxw_backup select * from zwxw
end;创建时提示:ora-24344 success with compilation error当删除数据时,提示:ORA-04098: trigger 'TRIG_ZWXW_DELETE' is invalid and failed re-validation
(使用WEB方式以界面方式操作也是出错)信息如下:
PLS-00103: Encountered the symbol "end-of-file" when expecting one of the following: begin case declare end exception exit for goto if loop mod null pragma raise return select update while with
当从ZWXW表中删除一条数据后,自动插入ZWXW_BACKUP表中
触发器定义如下:
create or replace trigger trig_zwxw_delete
before delete on zwxw
begin
insert into zwxw_backup select * from zwxw
end;创建时提示:ora-24344 success with compilation error当删除数据时,提示:ORA-04098: trigger 'TRIG_ZWXW_DELETE' is invalid and failed re-validation
(使用WEB方式以界面方式操作也是出错)信息如下:
PLS-00103: Encountered the symbol "end-of-file" when expecting one of the following: begin case declare end exception exit for goto if loop mod null pragma raise return select update while with
before delete on zwxw
begin
insert into zwxw_backup(字段1,字段2...) vaules(:old.字段1,:old.字段2...);
end;
create or replace trigger trig_zwxw_delete
before delete on zwxw
begin
insert into zwxw_backup select * from zwxw;
end;
before delete on zwxw
begin
insert into zwxw_backup select * from zwxw;最后少了;号。这和sql server 不一样的
end;
insert into zwxw_backup select * from zwxw
改为:
insert into zwxw_backup(字段...) select 字段... from zwxw
before delete on ds_emp
for each row
declare
-- local variables here
begin
insert into trg_del
values
(:old.empno,
:old.ename,
:old.job,
:old.mgr,
:old.hiredate,
:old.sal,
:old.comm,
:old.deptno);
end del_test;触发器好像不能对表进行insert into table select操作
create or replace trigger trig_zw_delete
before delete
on zwbegin
insert into zw_up select * from zw;
end;
create or replace trigger read_trig_zwxw_delete
before delete on zwxw
for each row
declare
v_1 zwxw.……;
v_2
.
.
begin
v_1:=:old.……;
v_2
.
.
end read_trig_zwxw_delete;create or replace trigger trig_zwxw_delete
after delect on zwxw
begin
insert into zwxw_backup values(v_1,v_2……);
end;