mysql作业

在开发中,我们可能会遇到这样的需求,每天晚上让数据库对某些数据进行定时的维护,这也就是为什么有的系统在某一个时间段是不能使用的。要使用定时这个功能,也就要用到时间(也可以叫做作业),在某一时间段执行一批SQ了语句。

对于事件的定义,是针对于某一个数据库,事件的触发和执行过程是由DBMS自动执行的,事件定义完成以后,然后开启事件,剩下的工作就交给数据库去维护数据了。

事件的定义格式

DELIMITER $$

-- SET GLOBAL event_scheduler = ON$$     -- required for event to execute but not create    

CREATE	/*[DEFINER = { user | CURRENT_USER }]*/	EVENT `demo`.`cuifei_event`/*事件名称*/

ON SCHEDULE
	 /* uncomment the example below you want to use */

	-- scheduleexample 1: run once
    /*
        AT这个格式可以指定是某个时间段要去执行
        EVERY 为每隔多长时间去执行,时间单位可以为[HOUR|MONTH|WEEK|DAY|MINUTE|...]
        STARTS  指定开始时间
        ENDS   指定结束时间
    */
	   --  AT 'YYYY-MM-DD HH:MM.SS'/CURRENT_TIMESTAMP { + INTERVAL 1 [HOUR|MONTH|WEEK|DAY|MINUTE|...] }

	-- scheduleexample 2: run at intervals forever after creation

	   -- EVERY 1 [HOUR|MONTH|WEEK|DAY|MINUTE|...]

	-- scheduleexample 3: specified start time, end time and interval for execution
	   /*EVERY 1  [HOUR|MONTH|WEEK|DAY|MINUTE|...]

	   STARTS CURRENT_TIMESTAMP/'YYYY-MM-DD HH:MM.SS' { + INTERVAL 1[HOUR|MONTH|WEEK|DAY|MINUTE|...] }

	   ENDS CURRENT_TIMESTAMP/'YYYY-MM-DD HH:MM.SS' { + INTERVAL 1 [HOUR|MONTH|WEEK|DAY|MINUTE|...] } */
	    EVERY 5  SECOND
	   STARTS CURRENT_TIMESTAMP
	   ENDS CURRENT_TIMESTAMP + INTERVAL 1 HOUR

/*[ON COMPLETION [NOT] PRESERVE]
[ENABLE | DISABLE]
[COMMENT 'comment']*/

DO
	BEGIN    
        /*这里写要执行的SQL语句,我在这里调用的是我自己写好的存储过程*/
	    CALL cuifei_cur();
	END$$

DELIMITER ;

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值