当新值与旧值不同时,将变化值记录下来,我是这样写的触发器CREATE OR REPLACE TRIGGER FZJC_HUM_CHANGE_STATION
BEFORE UPDATE OF STATION ON FZJC_HUM_INFO
FOR EACH ROW
BEGIN
if :NEW.STATION=:OLD.STATION then
else
INSERT INTO FZJC_HUM_CHANGE 
VALUES ( :NEW.WORK_IDNO, '岗位',:NEW.STATION,:OLD.STATION, TO_CHAR(SYSDATE,'YYYY.MM.DD HH24:MI:SS') );
end if
END FZJC_HUM_CHANGE_STATION;
然后执行如下语句改变源表
update fzjc_hum_info set station='党委书记_' where work_name='张三'
但是oracle报出如下错误
ORA-04098:触发器'FZJC.FZJC_HUM_CHANGE_STATION'无效且未通过重新确认
请教大家,这是那块写的有问题呢?