要实现的功能是定时刷新一些数据,如每天半夜一点钟更新数据,可以用函数配合事件来自动更新
1.新建一个函数
2.在begin 和 end 之间写你要执行的SQL
3.保存,并填入函数名
4.然后新建一个事件
然后保存这个事件,并填入事件名,保存时可能会出现错误提示“事件计划已关闭 事件只能在服务器启动“;
解决方案:
1.首先在sql中查询计划事件的状态:
SHOW VARIABLES LIKE 'event_scheduler'
2.如果是off,那代表mysql没开启事件计划,给它开启就好了
3.在mysql程序的目录下找到my.ini文件,添加一个项:
event_scheduler = 1
4.或者使用脚本来实现(推荐):
开启event_scheduler sql指令:
SET GLOBAL event_scheduler = ON;
相反,关闭event_scheduler指令:
SET GLOBAL event_scheduler = OFF;
保存后重启mysql服务即可,重启服务可以在服务管理里面找到
打开“计算机管理”,直接右键“计算机”点击“管理”就打开了
然后点击“服务和应用程序”,双击“服务”
找到MySql的服务,右键重新启动就可以了。