為了熟悉oracle存儲過程以及游標的使用,在這里簡單敘述一下存儲過程使用游標進行遍歷!
create or replace procedure Test --有參數就在()內寫,沒有就不寫() ( id in number; --ID ) is cursor c_test is select id,name from t_user t where t.id =id ; --聲明顯式游標 c_t c_test%rowtype; --定義游標變量,該變量的類型為基於游標c_test的記錄 begin --for 循環 for c_t in c_test loop dbms_output.put_line(c_t.id|| '-1-' || c_t.name); end loop;
--while 循環 open c_test;--必須要明確的打開游標 fetch c_test into c_t; while c_test%found loop dbms_output.put_line(c_t.id|| '-3-' || c_t.name); fetch c_test into c_t; end loop; close c_test; --必須要明確的關閉游標
--fetch 循環 open c_test;--必須要明確的打開游標 loop fetch c_test into c_t; exit when c_test%notfound; dbms_output.put_line(c_t.id|| '-2-' || c_t.name); end loop; close c_test; --必須要明確的關閉游標 end Test;
如上述內容有誤希望大家提出來!