触发器里面的一个小坑

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010686469/article/details/75070381

今天有同事在测试环境建了个触发器:

CREATE OR REPLACE TRIGGER "POSP_TRANS_A"."trg_update_time"
BEFORE INSERT OR UPDATE ON "POSP_TRANS_A"."POS_ORDER" REFERENCING OLD AS "OLD" NEW AS "NEW" FOR EACH ROW
BEGIN
   IF INSERTING THEN
      :NEW.UPDATE_TIME := SYSDATE;
   ELSE
      :NEW.UPDATE_TIME := SYSDATE;
   END IF;
END;

测试无误后,通过Navicat Premium导出到sql文件,在生产环境建立。

结果生产环境执行后报错:ora-04098:触发器无效且未通过重新验证

查来查去没查到原因,最后发现,自动导出的sql文件里面,自动给加了个分号


去掉分号,问题解决!

另,我用plsql developer导出触发器,发现并没有这个问题 = =


猜你喜欢

转载自blog.csdn.net/u010686469/article/details/75070381