查看event是否开启
show variables like '%sche%';
将事件计划开启
set global event_scheduler =1;
创建存储过程test
CREATE DEFINER=`root`@`%` PROCEDURE `e_test`()
BEGIN
-- 变量声明
DECLARE S_date INT(11);
DECLARE S_hour INT(11);
DECLARE S_min INT(11);
DECLARE S_count char(14);
declare flag int default false;
DECLARE diff_curtime_tstime CURSOR FOR SELECT day,hour,min_index FROM ts_record;
declare continue handler for not found set flag = true;
OPEN diff_curtime_tstime;
READ_LOOP:loop
FETCH diff_curtime_tstime into S_date,S_hour,S_min;
IF flag THEN
LEAVE READ_LOOP;
END IF;
SELECT CAST(S_date as CHAR(8));
SELECT CAST(S_hour as CHAR(2));
Set S_min =S_min*10;
SELECT S_min;
SELECT CAST(S_min as CHAR(2));
SET S_count= CONCAT(S_date,S_hour,S_min,'00');
SELECT UNIX_TIMESTAMP(S_count);
SELECT UNIX_TIMESTAMP();
DELETE FROM ts_record where (UNIX_TIMESTAMP()-UNIX_TIMESTAMP(S_count))>3600;
end loop;
close diff_curtime_tstime;
END;
创建event e_test
CREATE EVENT fe_test on schedule
EVERY 2 second
on completion preserve
do call e_test();
关闭事件任务
删除job
drop event e_del_logs;
show variables like '%sche%';
将事件计划开启
set global event_scheduler =1;
创建存储过程test
CREATE DEFINER=`root`@`%` PROCEDURE `e_test`()
BEGIN
-- 变量声明
DECLARE S_date INT(11);
DECLARE S_hour INT(11);
DECLARE S_min INT(11);
DECLARE S_count char(14);
declare flag int default false;
DECLARE diff_curtime_tstime CURSOR FOR SELECT day,hour,min_index FROM ts_record;
declare continue handler for not found set flag = true;
OPEN diff_curtime_tstime;
READ_LOOP:loop
FETCH diff_curtime_tstime into S_date,S_hour,S_min;
IF flag THEN
LEAVE READ_LOOP;
END IF;
SELECT CAST(S_date as CHAR(8));
SELECT CAST(S_hour as CHAR(2));
Set S_min =S_min*10;
SELECT S_min;
SELECT CAST(S_min as CHAR(2));
SET S_count= CONCAT(S_date,S_hour,S_min,'00');
SELECT UNIX_TIMESTAMP(S_count);
SELECT UNIX_TIMESTAMP();
DELETE FROM ts_record where (UNIX_TIMESTAMP()-UNIX_TIMESTAMP(S_count))>3600;
end loop;
close diff_curtime_tstime;
END;
创建event e_test
CREATE EVENT fe_test on schedule
EVERY 2 second
on completion preserve
do call e_test();
关闭事件任务
删除job
drop event e_del_logs;