您的位置:首页 > 数据库 > MySQL

Mysql游标阻止执行最后一次

2016-07-21 10:32 531 查看
DELIMITER $$

USE `you`$$

DROP PROCEDURE IF EXISTS `stockCursor`$$
CREATE DEFINER=`root`@`localhost` PROCEDURE `stockCursor`()
BEGIN
DECLARE change_id VARCHAR(40);
DECLARE flag INT DEFAULT 0;
DECLARE stock_cursor CURSOR FOR SELECT `order_id` FROM `ts_order` ;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET flag=1;
OPEN stock_cursor;
/*循环*/
REPEAT
FETCH stock_cursor INTO change_id;
/*判断防止多执行最后一次*/
IF flag=0 THEN
INSERT INTO test(`order_id`) VALUES(change_id);
END IF;
UNTIL flag
END REPEAT;
CLOSE stock_cursor ;
END$$

DELIMITER ;


  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: