oracle删除触发子(for each row)
xxj 2000-07-04 02:10:00 我有一个表A
ID
1
2
21
22
221
223
3
31
311
32
33
331
现在我删除ID号为2的记录,要求作一触发子能删除ID号以2开头的所有记录。
我所做的触发子如下:
create or replace trigger t_del_forum
after delete on forum
for each row
declare
ls_id varchar2(32);
begin
ls_id:=:old.id;
delete from forum where id like ls_id+'%' and id<>ls_id;
end t_del_forum;
但在执行:
delete from A where id='2'时会报告如下错误:
ORA-04091: 表ME.FORUM发生了变化,触发器/函数不能读
ORA-06512: 在"ME.T_DEL_FORUM", line 5
ORA-04088: 触发器'ME.T_DEL_FORUM'执行过程中出错!
希望ORACLE 数据库高手能给我回答