本文介绍的内容是:使用mysql的光标来执行循环操作,详见以下代码:
/* 定义变量一 */
DECLARE _Err_Code CHAR(8) DEFAULT '';
/* 定义变量二 */
DECLARE _Cnt INT DEFAULT 0;
/* 光标 */
DECLARE _done INT DEFAULT 0;
DECLARE _Cur_Error CURSOR FOR
SELECT col1,col2 FROM table WHERE rec_dd=ADDDATE(CURDATE(),-1);
DECLARE continue HANDLER FOR SQLSTATE '02000' SET _done = 1;
/* 打开光标 */
OPEN _Cur_Error;
/* 循环执行 */
REPEAT
FETCH _Cur_Error INTO _Err_Code, _Cnt; --读取下一行
IF NOT _done THEN
-- 这里的代码被循环执行(这里可以使用上面读取的值)
END IF;
UNTIL _done END REPEAT; --当_done=1时退出被循
/*关闭光标*/
CLOSE _Cur_Error;
END;