#查看当前是否已开启事件调度器
show variables like 'event_scheduler';
#要想保证能够执行event事件,就必须保证定时器是开启状态,默认为关闭状态
set GLOBAL event_scheduler = ON;
#创建定时任务 drop event if exists jc_content_ext;
delimiter ;;
CREATE EVENT `jc_content_ext` ON SCHEDULE EVERY 1 MINUTE STARTS '2017-07-20 16:00:43' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
UPDATE jc_content_ext
SET release_date = DATE_ADD(release_date, INTERVAL 1 YEAR)
WHERE
content_id IN (
SELECT
content_id
FROM
jc_content
WHERE
channel_id = 10
AND type_id = 1
AND model_id = 1
AND sort_date < DATE_SUB(
DATE_ADD(now(), INTERVAL 1 WEEK),
INTERVAL 1 YEAR
)
) ; UPDATE jc_content
SET sort_date = DATE_ADD(sort_date, INTERVAL 1 YEAR)
WHERE
channel_id = 10
AND type_id = 1
AND model_id = 1
AND sort_date < DATE_SUB(
DATE_ADD(now(), INTERVAL 1 WEEK),
INTERVAL 1 YEAR
) ; COMMIT ;
END;; delimiter;
#查看任务 show events;
|