Oracle pl sql基礎 迴圈

2021-06-13 17:15:46 字數 1514 閱讀 9960

一、迴圈語法以及用法

1、loop的語法以及用法,如下

loop

---處理程式

end loop; 

例子:declare v_counter binary_integer:=1--定義變數

begin 

loop

dbms_output.put_line(v_counter);

v_counter:=v_counter+1;

if v_counter=30 then--如果變數大於30就跳出迴圈

exit;

end if;

end loop;

end;

2、for- loop 的語法以及用法,語法如下:

for  變數 in 起始值..結束值  loop

---處理程式

end loop;

例子:declare v_counter binary_integer:=1;

begin

for v_counter in 1..30 loop

insert into tb_studentinfo values('名字'||v_counter,'年齡'||v_counter);

end loop;

commit;

end;

3、goto 順序控制

語法:goto label;

其中label是用雙箭頭括起來的標記,下面例子

declare

v_counter binary_integer:=1;

begin

for v_counter in 1..21 loop

insert into tb_studentinfo values(sys_guid(),'易**'||v_counter,v_counter,'男村'||v_counter||'組', '男');

if v_counter=10 then

goto insert_gril;

exit;

end if;

end loop;  

<>---此處為標記

for v_counter in 0..30 loop

insert into tb_studentinfo values(sys_guid(),'某女士'||v_counter,v_counter,'女村'||v_counter||'組', '女');

end loop;   

commit;

end;

二、預定義異常

1、dup_val_index :違反唯一性

2、login_denied:登入失敗、使用者名稱和密碼錯誤;

3、no_data_found:沒有發現資料存在;

4、too_many_rows:資料行太多,即乙個select....insert 語句匹配的多個資料行;

5、zero_divide:除數為零;

6、value_error:演算法或轉換錯誤;

7、case_not_found:在case語句中沒有發現匹配when項

Oracle PL SQL之LOOP迴圈控制語句

在pl sql中可以使用loop語句對資料進行迴圈處理,利用該語句可以迴圈執行指定的語句序列。常用的loop迴圈語句包含3種形式 基本的loop while.loop和for.loop。loop語句的基本語法結構如下 loop statement.end loop label name 語法說明 l...

Oracle PL SQL之LOOP迴圈控制語句

在pl sql中可以使用loop語句對資料進行迴圈處理,利用該語句可以迴圈執行指定的語句序列。常用的loop迴圈語句包含3種形式 基本的loop while.loop和for.loop。loop語句的基本語法結構如下 loop statement.end loop label name 語法說明 l...

Oracle PL SQL之LOOP迴圈控制語句

在pl sql中可以使用loop語句對資料進行迴圈處理,利用該語句可以迴圈執行指定的語句序列。常用的loop迴圈語句包含3種形式 基本的loop while.loop和for.loop。loop語句的基本語法結構如下 loop statement.end loop label name 語法說明 l...