请教一个触发器的问题

[复制链接]
查看11 | 回复2 | 2005-11-2 09:11:31 | 显示全部楼层 |阅读模式
我写了一个触发器如下:
create or replace trigger T_GS_UPDATE
after updateon qyxx_gs
for each row
declare
-- local variables here

begin
if :new.status=10 and :new.GSJGBM_GS=

ld.GSJGBM_GS then
insert into QYXX_GS_LOG(ID,YYZZZCH_GS,ZZJGDM_GS,QYMC_GS,FDDBR_GS,FDDBRSFZJH_GS,GDRS_GS,ZCDZ_GS,JYFW_GS,HYBM_GS,QYLXBM_GS,ZCZB_GS,ZCZBBZBM_GS,CLRQ_GS,YYZZFZRQ_GS,YYQXZZRQ_GS,GSJGBM_GS,BGSX_GS,BGHNR_GS,BGHZRQ_GS,NJRQ_GS,NJJG_GS,ZXSY_GS,ZXRQ_GS,ZXJG_GS,DXYY_GS,DXRQ_GS,QY_STATUS,MSG_ID,MSG_OP,MSG_DATE,ZCZBZF_GS,ZCZBWF_GS,STATUS,MSG_STATUS)
Values(

ld.ID,

ld.YYZZZCH_GS,

ld.ZZJGDM_GS,

ld.QYMC_GS,

ld.FDDBR_GS,

ld.FDDBRSFZJH_GS,

ld.GDRS_GS,

ld.ZCDZ_GS,

ld.JYFW_GS,:old.HYBM_GS,:old.QYLXBM_GS,:old.ZCZB_GS,:old.ZCZBBZBM_GS,:old.CLRQ_GS,:old.YYZZFZRQ_GS,:old.YYQXZZRQ_GS,:old.GSJGBM_GS,:old.BGSX_GS,:old.BGHNR_GS,:old.BGHZRQ_GS,:old.NJRQ_GS,:old.NJJG_GS,:old.ZXSY_GS,:old.ZXRQ_GS,:old.ZXJG_GS,:old.DXYY_GS,:old.DXRQ_GS,:old.QY_STATUS,:old.MSG_ID,:old.MSG_OP,:old.MSG_DATE,:old.ZCZBZF_GS,:old.ZCZBWF_GS,:old.STATUS,:old.MSG_STATUS);

end if;
end T_GS_UPDATE;

我在条件里增加加了一个and :new.NJJG_GS= :old.NJJG_GS ,就不能触发了,真的不明白什么原因,请大家指教一下。其实我写的这个东西的目的是在一个表的某些栏位发生变化时,不能触发,换句说,在这个表做update时,条件是我指定的那个几个栏位不变化时才能触发这个trigger.不知哪位大侠有什么好的办法。
回复

使用道具 举报

千问 | 2005-11-2 09:11:31 | 显示全部楼层
NJJG_GS是空字段么,空不等于空的
回复

使用道具 举报

千问 | 2005-11-2 09:11:31 | 显示全部楼层
能正确编译么?换其他条件试试看呢?
帮楼主顶!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行