[<<label_name>>]
LOOP
statement...
END LOOP [label_name]
【语法说明】
<<label_name>>:LOOP结构的标签,是可选项。
LOOP:LOOP循环开始标志。
statement:LOOP语句中循环执行的语句序列。
END LOOP:LOOP循环结束标志,可以添加LOOP结构的标签。
SQL> set serveroutput on;
SQL> --exit when
SQL> declare
2 v_rlt number(8):=-3;
3 begin
4 <<fst_loop>>
5 loop
6 dbms_output.put_line('v_rlt = '||v_rlt);
7 v_rlt:=v_rlt+1;
8 exit fst_loop when v_rlt > 3;
9 end loop;
10 dbms_output.put_line('LOOP循环已经结束!');
11 end;
12 /
while loop
[<<label_name>>]
WHILE boolean_expression
LOOP
statement...
END LOOP [label_name];
for loop
[<<label_name>>]
FOR index_name IN
[ REVERSE ]
lower_bound .. upper_bound
LOOP
statement...
END LOOP [label_name];
大体和java都是一样的,只不过形式差一些,有基础的话看起来还是比较好理解的。