MySql事件計畫任務

2021-06-28 00:32:51 字數 1222 閱讀 9785

drop event if exists eve1;

delimiter $$

create event eve1 on schedule every 1 second starts now() ends now()+1

on completion preserve

disable

dobegin

update testtable1 set age = age+1 where id = 1;

end$$

delimiter ;

select * from testtable1;

select now();

/*標準建立語句eventsevents

create event 事件任務名稱 on schedule at 時戳/every 任意非空的整數 時間單位 [starts 時戳] [ends時戳]

[on completion [not] preserve]

[enable | disable]

[comment '時間任務注釋']

dobegin

要執行的sql語句

endon schedule有兩種設定計畫任務的方式:

at 時戳:單次的計畫任務

every 任意非空的整數 時間單位 [starts 時戳] [ends時戳]:重複的計畫任務

設定了[starts 時戳] [ends時戳]表示只在該時間段內重複計畫任務

時戳可以是任意的timestamp 和datetime 資料型別。

要求提供的是將來的時間(大於current_timestamp),而且小於unix時間的最後時間(等於或小於'2037-12-31 23:59:59')。

[on completion [not] preserve]:

不寫預設是 on completion not preserve,表示當這個事件不會再發生的時候,即當單次計畫任務執行完畢後或當重複性的計畫任務執行到了ends階段,該事件任務即被drop掉。

on completion preserve 當事件任務結束後不被drop掉

[enable | disable]

不寫預設是enable

設定事件的狀態,如果是enable 的話,那麼系統就會啟動這個事件,disable則不啟動

可以用修改命令開啟或關閉事件,修改事件任務只要把關鍵字create換成alter即可。

*/

mysql計畫任務

1 檢查你的mysql是否開了這個功能 show variables like event scheduler 我執行了一遍發現記錄為空說明我的mysql沒有開呢。ok解決辦法 2 開啟你的mysql的計畫任務功能 使用這個功能之前必須確保event scheduler已開啟,可執行 set glo...

mysql計畫任務 event schedule

mysql的event schedule 可以讓你設定你的mysql資料庫再某段時間執行你想要的動作 這與檢視是不相同的。create event test1 on schedule every 1 day starts 2007 09 01 12 00 00 on completion not p...

使用MySQL計畫任務

原先,lamp的程式設計師為了完成一些週期性的資料庫操作任務,總是不得不借助於作業系統的幫助,比如windows的計畫任務,或者linux的contab。mysql5.1終於新增了event scheduler功能,可以直接在後台實現一下定時性的作業。但不知道什麼原因,在英文版的參考手冊中,位於觸發...