mysql 让一个存储过程定时作业的代码
(编辑:jimmy 日期: 2025/2/25 浏览:3 次 )
1、在mysql 中建立一个数据库 test1
语句:create database test1
2、创建表examinfo
create table examinfo(
id int auto_increment not null,
endtime datetime,
primary key(id)
);
3 插入数据:
insert into examinfo values('1','2011-4-23 23:26:50');
4 创建存储过程test
CREATE PROCEDURE test ()
BEGIN
update examinfo SET endtime = now() WHERE id = 1;
END;
5、 创建event e_test
复制代码 代码如下:
CREATE EVENT if not exists e_test
on schedule every 30 second
on completion preserve
do call test();
6、查看event是否开启: show variables like '%sche%';
将事件计划开启: set global event_scheduler=1;
关闭事件任务: alter event e_test ON COMPLETION PRESERVE DISABLE;
开户事件任务: alter event e_test ON COMPLETION PRESERVE ENABLE;
7、运行查询结果即可出现想要的结果。
结果显示如下:
原始数据:

过一段时间查询后的数据:

语句:create database test1
2、创建表examinfo
create table examinfo(
id int auto_increment not null,
endtime datetime,
primary key(id)
);
3 插入数据:
insert into examinfo values('1','2011-4-23 23:26:50');
4 创建存储过程test
CREATE PROCEDURE test ()
BEGIN
update examinfo SET endtime = now() WHERE id = 1;
END;
5、 创建event e_test
复制代码 代码如下:
CREATE EVENT if not exists e_test
on schedule every 30 second
on completion preserve
do call test();
6、查看event是否开启: show variables like '%sche%';
将事件计划开启: set global event_scheduler=1;
关闭事件任务: alter event e_test ON COMPLETION PRESERVE DISABLE;
开户事件任务: alter event e_test ON COMPLETION PRESERVE ENABLE;
7、运行查询结果即可出现想要的结果。
结果显示如下:
原始数据:

过一段时间查询后的数据:

下一篇:mysql中is null语句的用法分享