发布网友 发布时间:2022-04-30 20:10
共2个回答
懂视网 时间:2022-05-01 00:31
‘event_scheduler‘;如果显示OFF,则输入以下语句开启:
set global event_scheduler = off;
新建user表:
-- ---------------------------- -- Table structure for `user` -- ---------------------------- DROP TABLE IF EXISTS `user`; CREATE TABLE `user` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `name` varchar(200) NOT NULL, `address` varchar(500) NOT NULL, `addtime` datetime NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
新建一个时间,每隔一分钟插入一条数据:
参数说明:
DEFINER:创建者;
ON COMPLETION [NOT] PRESERVE :表示当时间不会发生后,删除事件(注意特定时间的事件,如果设置了该参数,执行完毕后,事件将被删除,不想删除的话可以设置成ON COMPLETION PRESERVE);
ENABLE:表示系统将执行这个事件;
-- ---------------------------- -- Event structure for `event_minute` -- ---------------------------- DROP EVENT IF EXISTS `event_minute`; DELIMITER ;; CREATE DEFINER=`root`@`localhost` EVENT `event_minute` ON SCHEDULE EVERY 1 MINUTE STARTS ‘2016-01-17 14:49:43‘ ON COMPLETION NOT PRESERVE ENABLE DO
BEGIN INSERT INTO USER(name, address,addtime) VALUES(‘test1‘,‘test1‘,now()); INSERT INTO USER(name, address,addtime) VALUES(‘test2‘,‘test2‘,now()); END ;; DELIMITER ;
新建一个事件,特定时间2016-01-17 15:30:00插入一条数据
-- ---------------------------- -- Event structure for `event_at` -- ---------------------------- DROP EVENT IF EXISTS `event_at`; DELIMITER ;; CREATE DEFINER=`root`@`localhost` EVENT `event_at` ON SCHEDULE AT ‘2016-01-17 15:30:00‘ ON COMPLETION NOT PRESERVE ENABLE DO
BEGIN INSERT INTO USER(name, address,addtime) VALUES(‘AT‘,‘AT‘,now()); END ;; DELIMITER ;
查看结果,结果正确:
Mysql中的事件(定时任务)
标签:
热心网友 时间:2022-04-30 21:39
写定时脚本实现,如果是windows系统,写bat脚本并加入定时任务中;如果是linux系统,写shell脚本并加入crontab中。