(编辑:jimmy 日期: 2025/10/31 浏览:2)
触发器
  
    
      编号
      类别
      ORACLE
      MYSQL
      注释
    
    
      1
      创建触发器语句不同
      create or replace trigger TG_ES_FAC_UNIT
        before insert or update or delete on ES_FAC_UNIT
        for each row
      create trigger `hs_esbs`.`TG_INSERT_ES_FAC_UNIT` BEFORE INSERT on `hs_esbs`.`es_fac_unit` 
      for each row 
      1. Oracle使用create or replace trigger语法创建触发器.
         Mysql使用 create trigger创建触发器.
      2. Oracle可以在一个触发器触发insert,delete,update事件. 
         Mysql每个触发器只支持一个事件. 也就是说,目前每个trigger需要拆分成3个mysql trigger.
      3. mysql trigger 不能在客户端显示或编辑.需要在服务器所在的机器上操作. 
    
    
      2
      触发器new和old记录行的引用不同
      取得新数据: :new.FAC_CD
      取得老数据: :old.FAC_CD
      取得新数据: NEW.FAC_CD
      取得老数据: OLD.FAC_CD
      1. new和old记录行的引用:
         mysql是NEW.col1,OLD.col1来引用。
         oracle是:NEW.col1, :OLD.col1来引用。
      2. NEW 和OLD不区分大小写.