友人、カスケードトリガーについて質問があります。2つのテーブル、3つの属性(id_data、sum、およびid_tool)を持つテーブルデータ、および3つの属性(id_tool、name、sum_total)を持つテーブルツールがあります。テーブルデータとツールはid_toolを使用して結合されます。
更新情報sum_totalのトリガーを作成したい。したがって、テーブルデータに挿入すると、tool.id_tool=data.id_toolが更新されるテーブルツールのsum_totalも更新されます。
このトリガーを作成しましたが、エラーora-04090です。
create or replace trigger aft_ins_tool
after insert on data
for each row
declare
v_stok number;
v_jum number;
begin
select sum into v_jum
from data
where id_data= :new.id_data;
select sum_total into v_stok
from tool
where id_tool=
(select id_tool
from data
where id_data= :new.id_data);
if inserting then
v_stok := v_stok + v_jum;
update tool
set sum_total=v_stok
where id_tool=
(select id_tool
from data
where id_data= :new.id_data);
end if;
end;
/
意見をお願いします。ありがとう。