MySQL定时器打开并调用实现代码。
创建测试表复制代码代码如下所示:
创建表
(
varchar(100)非空V
InnoDB引擎默认的字符集utf8);
为一个计时器调用创建一个存储过程
$分隔符
如果存在e_test美元下降过程
创建程序e_test()
开始
插入T值(1);
美元结束
分隔符;
持续的全球event_scheduler使定时功能MySQL必须在1
-检查计时器是否打开。
显示变量''%1方案%;
-打开计时器0:关闭1:打开
设置全局event_scheduler = 1;
创建事件
-叫e_test()存储过程自动的每一秒
如果不存在event_test创建事件
每1秒准时
完成后保存
请e_test();
-打开事件
改变对事件event_test
完成保留启用;
-关闭事件
改变对事件event_test
完成保存禁用;
从现在起每隔九天开始一次
创建事件事件
每9天准时开始()
完成保存启用
做
开始
呼叫总数();
结束
每月上午1点处决
创建事件event2
计划每1个月就开始date_add(date_add(date_sub(CURDATE(),间隔一天(CURDATE()),1)
完成保存启用
做
开始
调用统计();
结束
每季度上午2点处决
创建事件total_season_event
计划每1季度开始date_add(date_add(日期(concat(年((CURDATE)),ELT(、(CURDATE)(季度),了解),,1))间隔1,季度),间隔2小时)
完成保存启用
做
开始
电话season_stat();
结束
每年1月1日上午四点处决
创建事件total_year_event
计划每1年开始date_add(日期(concat(年(CURDATE)(1)+,-,1 -,1))间隔4小时)
完成保存启用
做
开始
电话year_stat();
结束
MySQL的事件在月、季和年期间自动调用存储过程。为了测试,它可以改变系统在一年的最后一天,如2010-12-31 23:59:55。