In Oracle 10g, there is no continue statement. Typically it is mimicked in an explicit cursor like such:

OPEN c_cur ;
<<cont>>
LOOP
    ...
    IF condition = 10 THEN
        GOTO cont ;
    END IF;
END LOOP;
CLOSE c_cur ;

Given that the LOOP keyword immediately follows the cursor in the cursor-for-loop syntax, how can a continue statement be mimicked?

FOR rec IN c_cur LOOP
    ...
END LOOP ;
有帮助吗?

解决方案

FOR rec IN c_cur LOOP
    ...
    IF condition = 10 THEN
        GOTO cont ;
    END IF ;

<<CONT>>
NULL; -- END cannot be immediately preceeded by a <<marker>>

END LOOP ;

其他提示

use CONTINUE

FOR rec IN c_cur LOOP
    IF condition = 10 THEN
        CONTINUE;
    END IF ;
END LOOP ;
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top