欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

Oracle PL/SQL CONTINUE 语句

最编程 2024-07-16 22:26:32
...

CONTINUE语句会立即跳过循环的当前迭代,并跳转到循环的下一次迭代。

DECLARE
  x NUMBER := 0; 
BEGIN 
  LOOP
    DBMS_OUTPUT.PUT_LINE (x); 
    x := x + 1; 
 
    IF x < 5 THEN 
      CONTINUE; 
    END IF; 
 
    DBMS_OUTPUT.PUT_LINE ('-'); 
    DBMS_OUTPUT.PUT_LINE (x); 
 
    EXIT WHEN x = 10; 
  END LOOP; 
 
  DBMS_OUTPUT.PUT_LINE (' After loop:  x = ' || TO_CHAR(x)); 
END; 
/ 

上面的代码生成以下结果:

Oracle PL/SQL CONTINUE 语句

 

CONTINUE-WHEN语句

CONTINUE-WHEN语句具有WHEN子句中的条件。

如果条件为真,则跳过循环的当前迭代。

DECLARE 
  x NUMBER := 0; 
BEGIN 
  LOOP
    DBMS_OUTPUT.PUT_LINE (x); 
    x := x + 1; 
    CONTINUE WHEN x < 5; 
    DBMS_OUTPUT.PUT_LINE ('after continue'); 
    DBMS_OUTPUT.PUT_LINE (x); 
    EXIT WHEN x = 10; 
  END LOOP; 
  DBMS_OUTPUT.PUT_LINE (' After loop:  x = ' || TO_CHAR(x)); 
END; 
/ 

上面的代码生成以下结果:

CONTINUE-WHEN语句

 

实例

下面是一个使用CONTINUE WHEN来跳过偶数编号的循环体执行的简单示例:

BEGIN 
   FOR l_index IN 1 .. 20 
   LOOP 
      CONTINUE WHEN MOD (l_index, 2) = 0; 
      DBMS_OUTPUT.PUT_LINE ('Loop index = ' || TO_CHAR (l_index)); 
   END LOOP; 
END; 
/ 

上面的代码生成以下结果:

CONTINUE-WHEN语句

推荐阅读