DROP PROCEDURE IF EXISTS sp_opr;
CREATE PROCEDURE sp_opr()
BEGIN
/**//* 定義變量一 */
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;