当前位置: 数据库>mysql
mysql 让一个存储过程定时作业的代码
来源: 互联网 发布时间:2014-09-06
本文导语: 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 PRO...
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、运行查询结果即可出现想要的结果。
结果显示如下:
原始数据:
过一段时间查询后的数据: