首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > Mysql >

mysql 游标跟时间调度器结合操作

2012-09-01 
mysql 游标和时间调度器结合操作DELIMITER //CREATE EVENT e_hourlyON SCHEDULEEVERY 1 MINUTE-- SECONDDO

mysql 游标和时间调度器结合操作

DELIMITER //CREATE EVENT e_hourlyON SCHEDULEEVERY 1 MINUTE-- SECONDDOBEGINdeclare this_num int; declare this_id int;declare done int default 0; -- 循环标记-- 定义游标DECLARE ordernumbers CURSOR FOR SELECT tab1_id,num FROM tab1;declare continue handler for sqlstate '02000' set done = 1;     -- 打开游标   OPEN ordernumbers;   -- 循环所有的行   REPEAT   -- Get order number   FETCH ordernumbers INTO this_id,this_num;   while(not done) do       if(this_num>=1) then         update tab1 set num=num-1 WHERE tab1_id=this_id;         -- insert into userConsumer(BusinessID,todayconsumer,isErro) values (this_id,1,'没有异常');       end if;      -- 游标向下走一步         FETCH  ordernumbers  INTO  this_id,this_num;   end while;     -- 循环结束   UNTIL done   END REPEAT;   -- 关闭游标   CLOSE ordernumbers;END;

热点排行