我写的触发器为什么不能执行,是针对同一张表当其中的某些字段改变时,则更新一个标志位!
yudu 2004-09-07 09:03:45 注:我把update语句封掉,换作i:='0',就可以执行了,为什么???
create or replace trigger trig_yhbz_wzcf
before update on Z_WZCF
for each row
--declare
--i varchar2(1);
begin
--终端编号、处罚机构、
--决定书号、罚款金额、
--滞纳金、扣分、
--处罚类型、处罚结果、
--处罚日期、交易流水、
--已缴标志、撤销标志、
--民警编号、TAC码
if (:new.spsam<>:old.spsam) or (:new.sjgbm<>:old.sjgbm)
or (:new.sjdsbh<>:old.sjdsbh) or (:new.nfkje<>:old.nfkje)
or (:new.nznj<>:old.nznj) or (:new.nwzjf<>:old.nwzjf)
or (:new.sjdszl<>:old.sjdszl) or (:new.scfjg<>:old.scfjg)
or (:new.dcfrq<>:old.dcfrq) or (:new.sjyls<>:old.sjyls)
or (:new.sjkbz<>:old.sjkbz) or (:new.syxbz<>:old.syxbz)
or (:new.scfmj<>:old.scfmj) or (:new.stac<>:old.stac) then
--i:='0';
update z_wzcf set syhbz='0' where nwzcf_sn=:old.nwzcf_sn;
end if;
end;