PL/SQL continue
如果继续语句的主体是有条件的或无条件的,则continue语句用于从提醒中退出循环,并强制执行循环的下一次迭代,跳过两者之间的任何代码。
continue语句不是Oracle 10g中的关键字。它是oracle 11g中包含的新功能。
例如: 如果continue语句过早退出了FOR FOROP游标,则退出内部循环并将控制权转移到外部循环的下一个迭代,游标将关闭(在这种情况下,CONTINUE的作用类似于GOTO )。
语法:
PL/SQL继续语句的示例
让我们以PL/SQL继续语句的示例为例。
DECLARE
x NUMBER := 0;
BEGIN
LOOP--After continue statement, control resumes here
DBMS_OUTPUT.PUT_LINE ('Inside loop: x = ' || TO_CHAR(x));
x := x + 1;
if x < 3 THEN
continue;
END IF;
DBMS_OUTPUT.PUT_LINE
('Inside loop, after continue: x = ' || TO_CHAR(x));
EXIT WHEN x = 5;
END LOOP;
DBMS_OUTPUT.PUT_LINE (' After loop: x = ' || TO_CHAR(x));
END;
/
执行上述代码后,您会得到以下结果:
Inside loop: x = 0
Inside loop: x = 1
Inside loop: x = 2
Inside loop, after continue: x = 3
Inside loop: x = 3
Inside loop, after continue: x = 4
Inside loop: x = 4
Inside loop, after continue: x = 5
After loop: x = 5
注意: Oracle 10g不支持continue语句。 Oracle 11g支持此功能。