while循环
-- 计算1+2+...+100之和
declare
-- 声明循环控制变量v_i 和 计算结果变量 v_sum 并指定属性和初始值;
v_i number(3):=1;
v_sum number(5):=0;
begin
-- 循环体
while v_i <= 100 loop
v_sum := v_sum + v_i;
v_i := v_i+1;
end loop;
dbms_output.put_lune(v_sum);
end;
for循环
-- 计算1+2+...+100之和
declare
-- 声明计算结果变量 v_sum 并指定属性和初始值;
v_sum number(5):=0;
begin
-- 循环体。
-- 1..100 = 1~100,加上 reverse ( reverse 1..100) 即从100到1。
for c in 1..100 loop
v_sum := v_sum + v_i;
v_i := v_i+1;
end loop;
dbms_output.put_lune(v_sum);
end;
when循环
-- 计算1+2+...+100之和
declare
-- 声明循环控制变量v_i 和 计算结果变量 v_sum 并指定属性和初始值;
v_i number(3):=1;
v_sum number(5):=0;
begin
-- 循环体
loop
v_sum := v_sum + v_i;
v_i := v_i+1;
exit when v_i > 100;
end loop;
dbms_output.put_lune(v_sum);
end;