首页 > 代码库 > mysql存储过程和定时调用
mysql存储过程和定时调用
1、创建存储过程
1 create procedure proc_name()2 begin3 sql;4 end
sql为定时值执行的代码,比如,定时向表里插入当前时间:INSERT into table(times) VALUES(NOW());;然后通过事件调度来定时执行该存储过程。
2、创建触发事件
1 create event if not exists event_name2 on schedule every 30 second3 on completion preserve4 do call proc_name()
创建一个事件调度,在该事件调度完成后,每30秒执行调用存储过程一次。若只想让存储过程在某个时间只执行一次,则把preserve改为not preserve。
3、查看event是否开启
1 show variables like ‘%sche%‘
4、将事件计划开启
1 set global event_scheduler=1;
全局事件调度开关,1为开,0为关。
5、开启事件任务
1 alter event event_name on completion preserve enable;
打开指定的事件调度开关
6、关闭事件任务
1 alter event event_name on completion preserve disable;
关闭指定的事件调度开关
7、查看数据库所有的存储过程
1 SELECT * FROM mysql.proc
查看数据库的所有存储过程,在mysql安装完后,就默认安装有一个叫mysql的数据库,里面有一个表叫proc,通过查看这个表也可以查询数据库的所有存储过程。
8、查看数据库里所有的存储过程+内容
1 show procedure status;
9、查看存储过程或函数的创建代码
1 show create procedure you_proc_name;
10、删除存储过程
1 drop procedure proc_name;
mysql存储过程和定时调用
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。