最近写了个小项目,需要定时查询数据并添加到另一表中。思路如下:
一、创建存储过程
二、创建事务定时执行存储过程
(思路就是这样,简单明了)
来看先过程,以下我按sql最简来写:
1、创建存储过程
CREATE PROCEDURE up_con_outTime()
BEGIN
select * from student;
END;
2、创建事务定时执行存储过程
--DEFINER=`root`@`localhost` 1.%允许来自任何ip的连接2.localhost允许本机的连接
CREATE DEFINER=`root`@`localhost` EVENT up_con_outTime_event
ON SCHEDULE EVERY 1 MINUTE STARTS '2018-10-13 09:57:59'
ON COMPLETION NOT PRESERVE ENABLE
DO CALL up_con_outTime
存储过程也好了,事务也好了。接下来就是执行!
1.开启事件
查看event调度器是否开启>>>show variables like '%sche%';
开启事件>>>set GLOBAL event_scheduler = ON;
2.开启事务定时器
ALTER EVENT up_con_outTime_event ENABLE;
End关闭事务定时器(如有需要)
ALTER EVENT up_con_outTime_event DISABLE;
另:附上备用sql语句
查看存储过程
show procedure status
查看事件
select * from mysql.event
删除事件
drop event test_aaa_event;
查看事件运行状态
select * from mysql.event
查看存储过程源码
SHOW CREATE PROCEDURE sel_consumelogs_tostatics;
查看事件创建源码
SHOW CREATE EVENT jfinal_consta_event