天天看点

MYSQL定时执行存储过程

//**MYSQL定时执行存储过程

查看event是否开启: show variables like '%sche%';

将事件计划开启: set global event_scheduler=1;

关闭事件任务: alter event e_test ON COMPLETION PRESERVE DISABLE;

开户事件任务: alter event e_test ON COMPLETION PRESERVE ENABLE;

简单实例.

创建表 CREATE TABLE test(endtime DATETIME);

创建存储过程test

     CREATE PROCEDURE test ()

     BEGIN

          update examinfo SET endtime = now() WHERE id = 14;

     END;

     创建event e_test

     CREATE EVENT if not exists e_test

          on schedule every 30 second

          on completion preserve

     do call test();

     每隔30秒将执行存储过程test,将当前时间更新到examinfo表中id=14的记录的endtime字段中去.

//** MYSQL取一个月前一个月后的时间

 date_add() 增加

 date_sub()减少

 month 月份