MySQL利用Navicat客户端实现定时插入删除数据
前言
MySQL在windows下,利用Navicat客户端,创建存储过程实现简单定时任务对表操作
环境
MySQL5.7.21
windows10
Navicat(premium)11.2.7 64位
开启MySQL定时
查询状态
新建查询>运行:SHOW VARIABLES LIKE 'event_scheduler'
查询看到默认为关闭
修改为开启
执行:SET GLOBAL event_scheduler = ON
开启,再次查询为ON,ok
创建表
创建函数
打开窗口
一次点击 函数>新建函数>完成
创建函数
在begin和end之间写一条要执行的sql
每分钟新增一条数据(定时删除可看最下方ps内容)
代码
BEGIN
INSERT INTO hello (text,date) VALUES ("每分钟增加一条",NOW());
END
点保存,填写一个名字,再点击函数可以看到刚才新建的函数
创建事件
一次点击 事件>新建 输入call +刚才函数起的名字,我的是:CALL hello_min_ins
点击 计划,设置 时间间隔和开始时间
起一个名字保存,点击事件可以看到刚才创建的事件
此事件用来定时调用之前创建的函数
完成
实现了每分钟新增一条数据
ps:如果想每分钟删除一条id最小的数据,新建函数
BEGIN
DELETE FROM hello ORDER BY id LIMIT 1;
END
ps:如果想每天删除七天前的数据,新建函数
BEGIN
DELETE FROM hello WHERE date < DATE_SUB(CURDATE(), INTERVAL 7 DAY);
END
事件里修改事件EVERY 1 DAY即可
成功
简单的定时任务调存储过程实现了对mysql的定时操作
如有偏颇敬请斧正,本厮邮箱:[email protected]