MySQL如何创建每天0点自动运行的触发器?

有一条SQL语句,每天都想在MySQL所在服务器时间00:00:00的时候自动运行,应该是创建触发器吧?如何才能实现呢?

mySql 5.1版本以上有一个event事件,可以让它在0点时自动运行,实现步骤如推荐的答案,但是我建议你直接用heidiSQL,很快就生成了
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-07-31
1、触发器是update后激发的,我想你需要的是mysql计划任务。
2、计划任务状态
show variables like '%event%';
3、使用下列的任意一句开启计划任务:
SET GLOBAL event_scheduler = ON;
SET @@global.event_scheduler = ON;
SET GLOBAL event_scheduler = 1; -- 0代表关闭
SET @@global.event_scheduler = 1;
4、创建event语法
help create event
5、实例
实例0:
每5分钟删除sms表上面ybmid为空白且createdate距现时间超过5分钟的数据。
USE test;
CREATE EVENT event_delnull
ON SCHEDULE
EVERY 5 MINUTE STARTS '2012-01-01 00:00:00' ENDS '2012-12-31 00:00:00'
DO
DELETE FROM sms WHERE ybmid='' AND TIMEDIFF(SYSDATE(),createdate)>'00:05:00';本回答被提问者和网友采纳
第2个回答  2012-07-31
你好,触发器不是用来监听时间的,触发器可以用来监听增、删、改操作
你想在每天某一个时刻执行一句sql,在程序中写个线程不就可以了吗?
变通着来,不一定非要在数据库中实现。数据库中的东西多了就不好维护了。
相似回答