触发器问题...(100分)(100分)

Y

y2ky2k

Unregistered / Unconfirmed
GUEST, unregistred user!
有一触发器,AFTERUPDATE后触发,在IB里没有问题...
OLD_AMOUNT OLD_MOUNT KS_AMOUNT KS_MOUNT NEW_AMOUNT NEW_MOUNT
10 0 2 0 12 0
NEW_AMOUNT=OLD.OLD_AMOUNT+NEW.KS_AMOUNT;
但在程序里,一修改KS_AMOUNT的值,就变为:
OLD_AMOUNT OLD_MOUNT KS_AMOUNT KS_MOUNT NEW_AMOUNT NEW_MOUNT 0 2 0 12 0
NULL NULL 2 0 14 0

谁知是什么问题呢???
 
有一触发器,AFTERUPDATE后触发,在IB里没有问题...
OLD_AMOUNT OLD_MOUNT KS_AMOUNT KS_MOUNT NEW_AMOUNT NEW_MOUNT
10 0 2 0 12 0
NEW_AMOUNT=OLD.OLD_AMOUNT+NEW.KS_AMOUNT;
但在程序里,一修改KS_AMOUNT的值,就变为:
OLD_AMOUNT OLD_MOUNT KS_AMOUNT KS_MOUNT NEW_AMOUNT NEW_MOUNT
NULL NULL 4 0 14 0
~~~~2改为4
为什么OLD_AMOUNT和OLD_MOUNT字段为空了??
INTERBASE6+IBX6.04+D6 UP2
谁知是什么问题呢???
 
触发器的程序写出来参考一下.
 
to:boye

if (new.ks_amount<>old.ks_amount) then
update st_items set
new_amount=old.old_amount+new.ks_amount
where id=old.id;
if (new.ks_mount<>old.ks_mount) then
update st_items set
new_mount=old.old_mount+new.ks_mount
where id=old.id;
 
怎么没人回答我的问题??
 
各位大虾...帮帮忙呀...
 
请仔细检查程序的代码.
update里的SQL有没有问题.
 
king kong 提醒了我...分就给你吧...
 
顶部