create or replace trigger t_ap_paybill after
insert on ap_paybill for each row
declare ii VARCHAR2(101);
begin
if :new.def4 ='~'
then
select name into ii from bd_bankaccsub where pk_bankaccsub = (select pk_bankaccsub from bd_custbank where isdefault ='Y' AND pk_cust =(select supplier from ap_payitem where pk_paybill = :new.pk_paybill));
update ap_paybill set def4 = ii where pk_paybill = :new.pk_paybill;
end if ;
end;
A表,B表,C表,A,B為主子表
這個,是我寫的一個觸發器,只要是針對當A表中插入資料時,根據B表中的b欄位找出C表中的name然后賦值給A表def4
當我插入資料時報錯:請大神幫忙解決一下,謝謝
ORA-04091: 表 NC20170303.AP_PAYBILL 發生了變化, 觸發器/函式不能讀它
ORA-06512: 在 "NC20170303.T_APPAYBILL", line 4
ORA-04088: 觸發器 'NC20170303.T_APPAYBILL' 執行程序中出錯
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/102117.html
標籤:開發
上一篇:Oracle資料更新
下一篇:v$session的active
