事件在特定日间隔内不止一次运行

时间:2013-07-10 11:30:28

标签: mysql

活动结构:

CREATE DEFINER=`root`@`localhost` EVENT `EVENT_NAME` ON SCHEDULE EVERY 5 MINUTE STARTS '2013-07-01 09:00:00' ENDS '2013-07-01 09:38:00' ON COMPLETION PRESERVE ENABLE DO update ... Event Query ...

这将允许事件查询每隔五分钟运行从9:00到9:38

但在9:38到达后,事件结束,第二天它自动再次自动失效,因为它被禁用了。

我可能缺少任何解决方案吗?

1 个答案:

答案 0 :(得分:1)

遗憾的是,我不认为MySQL事件的SCHEDULE规范与INTERVAL一样灵活。

你可以使用类似的东西来推动自己:

delimiter $$

CREATE DEFINER=`root`@`localhost` 
EVENT `EVENT_NAME` 
ON SCHEDULE EVERY 5 MINUTE 
ON COMPLETION PRESERVE ENABLE 
DO 
 BEGIN
  IF (hour(now()) = 9 AND minute(now()) <= 38) THEN
   -- Do your stuff here
  END IF;

END$$