DECLARE DONE3 INT DEFAULT 0;
DECLARE CUR_PZMX_DATA CURSOR FOR SELECT colm2 FROM tab_2;
DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET DONE3 = 1;
OPEN CUR_PZMX_DATA;
REPEAT
FETCH CUR_PZMX_DATA INTO AS_STR1;
......
UNTIL DONE3 END REPEAT;
CLOSE CUR_PZMX_DATA;
光标语句如上,SELECT colm2 FROM tab_2 查询得到6条记录
理论上应该循环6次退出,但是我测试中最后一条记录循环了两次在退出,循环了7次请教原因及解决方法
DECLARE CUR_PZMX_DATA CURSOR FOR SELECT colm2 FROM tab_2;
DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET DONE3 = 1;
OPEN CUR_PZMX_DATA;
REPEAT
FETCH CUR_PZMX_DATA INTO AS_STR1;
......
UNTIL DONE3 END REPEAT;
CLOSE CUR_PZMX_DATA;
光标语句如上,SELECT colm2 FROM tab_2 查询得到6条记录
理论上应该循环6次退出,但是我测试中最后一条记录循环了两次在退出,循环了7次请教原因及解决方法
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done1 = 1; OPEN c1;
lable_c1:
LOOP
SET done1 = 0;
FETCH c1 INTO v_productid, v_code;
IF done1 = 1 THEN
LEAVE lable_c1;
END IF;
...... END LOOP lable_c1;
CLOSE c1;