我有这样的触发:该行级别触发器失败?
create or replace trigger t_calctotal
after insert or update on item_fornecimento
REFERENCING NEW AS NEW OLD AS OLD
for each row
begin
if inserting then
dbms_output.put_line(' On Insert');
update fornecimento f set f.total_enc_fornec = f.total_enc_fornec +:NEW.prec_total_if where f.id_fornecimento = :NEW.id_fornecimento;
else
dbms_output.put_line(' On Update');
update fornecimento f set f.total_enc_fornec = f.total_enc_fornec - :OLD.prec_total_if +:NEW.prec_total_if where f.id_fornecimento = :NEW.id_fornecimento;
end if;
end;
基本上我要刷新的顺序(fornecimento)的合计值,通过在suming item_fornecimento的所有项目;我必须以不同的方式处理这种情况,如果是插入,就是更新。 触发器编译和所有,甚至一次,但它是唯一一个。我已经插入或在的SQLDeveloper更新了我的prec_total_if在item_fornecimento,但直到它由该触发器插入值替换订单的(fornecimento)总还是没有改变:(。
如果是很重要的,我f.total_enc_fornec它为空;它打印输出,但它似乎无法更新
Tks,我已经做到了。这是抢购的代价! – neverMind 2010-01-21 21:34:54