2016-07-25 67 views
0

我從ETL工具自動觸發在MySQL中

這裏receving數據到MySQL表更新記錄是表

用戶

id username latestlogdate 
1 a  2016-11-05 15:52:00 
2 b  2016-11-05 15:52:00 
3 c  2016-07-25 15:00:00 
4 d  2016-07-24 03:15:00 

在此表中第三和第四的記錄都很好因爲他們來了正確。但是有時候像1和2這樣的記錄會帶來一些未來的日期。

ETL中沒有問題。

這裏的流動..

csvfiles ----> ETL -----> Mysqltable

這些未來的日期來在文件中。我不能改變的文件。

所以我想問一下是否有任何觸發選項,以便我可以在將來的日期更新到當前日期。

我的問題是,如果任何記錄在表到達未來latestlogdate,應自動更新爲當前日期。(他們在表到達天)

在此先感謝

+0

我已經把我的個人資料頁的一些事件相關的鏈接觸發。所以有那條路線而不是觸發器 – Drew

回答

0

我認爲,你可以創建一個這樣

CREATE TRIGGER `MyDatabase`.`MyTriggerName` BEFORE INSERT 
ON MyDatabase.MyTable FOR EACH ROW 
BEGIN 
    if new.latestlogdate > now() then 
     new.latestlogdate = now() 
    end if 
END; 

XAV