MySQL与Oracle 差异比较之六触发器
触发器
编号
类别
ORACLE
MYSQL
注释
1
创建触发器语句不同
createorreplace triggerTG_ES_FAC_UNIT
beforeinsertorupdateordelete onES_FAC_UNIT
foreachrowcreate trigger`hs_esbs`.`TG_INSERT_ES_FAC_UNIT` BEFOREINSERT on`hs_esbs`.`es_fac_unit`
foreachrow 1.Oracle使用createorreplacetrigger语法创建触发器.
Mysql使用createtrigger创建触发器.
2.Oracle可以在一个触发器触发insert,delete,update事件.
Mysql每个触发器只支持一个事件.也就是说,目前每个trigger需要拆分成3个mysqltrigger.
3.mysqltrigger不能在客户端显示或编辑.需要在服务器所在的机器上操作.
2
触发器new和old记录行的引用不同
取得新数据: :new.FAC_CD
取得老数据: :old.FAC_CD取得新数据: NEW.FAC_CD
取得老数据: OLD.FAC_CD1.new和old记录行的引用:
mysql是NEW.col1,OLD.col1来引用。
oracle是:NEW.col1,:OLD.col1来引用。
2.NEW和OLD不区分大小写.