--loop循環
declare
v_i number := 0;
begin
loop
v_i := v_i + 2;
/*
if v_i > 10 then
exit;
end if;
*/
exit when v_i > 10;
dbms_output.put_line('v_i = ' || v_i);
end loop;
--繼續執行下一行的代碼。
dbms_output.put_line('aa');
end;
--while循環
declare
v_i number := 0;
begin
while v_i < 10 loop
v_i := v_i + 2;
dbms_output.put_line('v_i = ' || v_i);
end loop;
--繼續執行下一行的代碼。
dbms_output.put_line('aa');
end;
--for循環
--1:循環中不需要定義變量。會自動定義
--2:不能設置步長
declare
begin
for v_i in 1 .. 10 loop
dbms_output.put_line('v_i = ' || v_i);
end loop;
end;
declare
begin
--break;
for v_i in 1 .. 10 loop
if v_i = 5 then
exit;
end if;
dbms_output.put_line(v_i);
end loop;
dbms_output.put_line('繼續執行');
--continue;
for v_i in 1 .. 10 loop
if v_i = 5 then
null;
else
dbms_output.put_line('aa = ' || v_i);
end if;
end loop;
dbms_output.put_line('繼續執行');
end;
Oracle中沒有break和continue這兩個關鍵字,所以我們需要用別的方式來替換它。