oracle循環語句小結

主要有以下五種循環:Exit When、Loop、While、For(普通循環)、For(遊標循環),下面舉例一一說明(均爲存儲過程)。


1、Exit When循環:
create or replace procedure proc_test_exit_when is
i number;
begin
i:=0;
LOOP
Exit When(i>5);
Dbms_Output.put_line(i);
i:=i+1;
END LOOP;
end proc_test_exit_when;
——————————————————–俺是分割線—————————————————————–

2、Loop循環:
create or replace procedure proc_test_loop is
i number;
begin
i:=0;
loop
i:=i+1;
dbms_output.put_line(i);
if i>5 then
exit;
end if;
end loop;
end proc_test_loop;
——————————————————–俺是分割線—————————————————————–

3、While循環:
create or replace procedure proc_test_while is
i number;
begin
i:=0;
while i<5 loop
i:=i+1;
dbms_output.put_line(i);
end loop;
end proc_test_while;
——————————————————–俺是分割線—————————————————————–

4、For普通循環:
create or replace procedure proc_test_for is
i number;
begin
i:=0;
for i in 1..5 loop
dbms_output.put_line(i);
end loop;
end proc_test_for;
——————————————————–俺是分割線—————————————————————–

5、For遊標循環:
create or replace procedure proc_test_cursor is
userRow test%rowtype;
cursor userRows is
select * from test;
begin
for userRow in userRows loop
dbms_output.put_line(userRow.id||’,'||userRow.Name||’,'||userRows%rowcount);
end loop;
end proc_test_cursor;
——————————————————–俺是分割線—————————————————————–

上面所示爲存儲過程相應代碼,你可以通過如下方式進行測試:

進入pl/sql, 執行 文件->新建->程序窗口->空白,拷貝以上各段代碼,到pl/sql空白窗口中,安F8執行編譯。

再 執行 文件->新建->命令窗口 進入命令窗口 執行一下  set serveroutput on 這句代碼,然後,輸入exec 相應存儲過程,ok。

第5中循環 要求新建一個名爲test的表 字段 id、name,插入幾條數據,進行測試即可。

本文出自 “gjhgkh” 博客,請務必保留此出處http://77857.blog.51cto.com/67857/419594

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章