二、創建事件(CREATE EVENT)
先來看一下它的語法:EVENT?[IF??]?event_name
ON?SCHEDULE?schedule
MySQL source、[ON?COMPLETION?[]?PRESERVE]
[ENABLE?|?DISABLE]
[COMMENT?'comment']
sql_statement;
mysql重啟命令?schedule:
AT??[+??]
|?EVERY??[STARTS?]?[ENDS?]
:
innodb_lock_wait_timeout,quantity?{?|??|??|??|??|??|
|??|
1) 首先來看一個簡單的例子來演示每秒插入一條記錄到數據表test;
aaa?(timeline?);
EVENT?e_test_insert
ON?SCHEDULE?EVERY?1
test.aaa??();
等待3秒鐘后,再執行查詢看看:mysql>??*??aaa;
+
|?timeline?|
+
|?2007-07-18?20:44:26?|
|?2007-07-18?20:44:27?|
|?2007-07-18?20:44:28?|
+
2) 5天后清空test表:EVENT?e_test
ON?SCHEDULE?AT??+??5
TABLE?test.aaa;
3) 2007年7月20日12點整清空test表:EVENT?e_test
ON?SCHEDULE?AT??'2007-07-20?12:00:00'
TABLE?test.aaa;
4) 每天定時清空test表:EVENT?e_test
ON?SCHEDULE?EVERY?1
TABLE?test.aaa;
5) 5天后開啟每天定時清空test表:EVENT?e_test
ON?SCHEDULE?EVERY?1
STARTS??+??5
TABLE?test.aaa;
6) 每天定時清空test表,5天后停止執行:EVENT?e_test
ON?SCHEDULE?EVERY?1
ENDS??+??5
TABLE?test.aaa;
7) 5天后開啟每天定時清空test表,一個月后停止執行:EVENT?e_test
ON?SCHEDULE?EVERY?1
STARTS??+??5
ENDS??+??1
TABLE?test.aaa;
[ON COMPLETION [NOT] PRESERVE]可以設置這個事件是執行一次還是持久執行,默認為NOT PRESERVE。
8) 每天定時清空test表(只執行一次,任務完成后就終止該事件):EVENT?e_test
ON?SCHEDULE?EVERY?1
ON?COMPLETION??PRESERVE
TABLE?test.aaa;
[ENABLE | DISABLE]可是設置該事件創建后狀態是否開啟或關閉,默認為ENABLE。
[COMMENT ‘comment’]可以給該事件加上注釋。
三、修改事件(ALTER EVENT)EVENT?event_name
[ON?SCHEDULE?schedule]
[RENAME?TO?new_event_name]
[ON?COMPLETION?[]?PRESERVE]
[COMMENT?'comment']
[ENABLE?|?DISABLE]
[?sql_statement]
1) 臨時關閉事件ALTER?EVENT?e_test?DISABLE;
2) 開啟事件ALTER?EVENT?e_test?ENABLE;
3) 將每天清空test表改為5天清空一次:EVENT?e_test
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态