- 觸發器
編號 | 類別 | 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不區分大小寫. |