1 oracle 游標cursor 儲存過程

2021-09-02 09:58:00 字數 2050 閱讀 4601

靜態游標和ref游標,靜態游標分為:顯示游標/隱式游標

顯示游標使用步驟:宣告游標,開啟,讀取,關閉

declare cursor cursor_name

open cursor_name

fetch cursor_name into record_name

close cursor_name

declare

cursor my_test is select * from sf_operatorlog;

row_record sf_operatorlog%rowtype; (宣告型別,或者varchar(20),oid%type)

begin

open my_test;

fetch my_test into row_record;

dbms_output.put_line(row_record.oid||'%$%'||row_record.tablename);

close my_test;

end;

對於fetch要執行多條語句操作時,新增loop/end loop;

declare

cursor my_test is select name,type from user_source;

row_oid user_source.name%type;

row_tablename user_source.type%type;

begin

open my_test;

loop

fetch my_test into row_oid,row_tablename;

exit when my_test%notfound;

dbms_output.put_line(row_oid||'%$%'||row_tablename);

end loop;

close my_test;

end;

使用fetch...into...是單條資料提取,

使用fetch...bulk collect into + for進行批量提取

declare

cursor my_test is select * from user_source;

type tab is table of user_source%rowtype;

row_record tab;

begin

open my_test;

loop

fetch my_test bulk collect into row_record ;

for i in 1..row_record.count

loop

dbms_output.put_line(row_record(i).type||'---'||row_record(i).name);

end loop;

exit when my_test%notfound;

end loop;

close my_test;

end;

或是用cursor for loop迭代

declare

cursor my_test is select name,type from user_source;

begin

for index1 in my_test

loop

dbms_output.put_line(index1.name||'---'||index1.type);

end loop;

end;

游標的屬性

%isopen(true/false) if my_test%isopen then else

%found(true/false) if my_test%found then else

%notfound(true)

%rowcount(int) 當前游標的行數

帶引數的游標 191/171

隱式游標sql 192/172

oracle 游標cursor詳解

一 概念 游標是sql的乙個記憶體工作區,由系統或使用者以變數的形式定義。游標的作用就是用於臨時儲存從資料庫中提取的資料塊。在某些情況下,需要把資料從存放在磁碟的表中調到計算機記憶體中進行處理,最後將處理結果顯示出來或最終寫回資料庫。這樣資料處理的速度才會提高,否則頻繁的磁碟資料交換會降低效率。二 ...

oracle 游標操作,cursor

在游標中使用引數 cursor cursor name p state in state type is select statement 沒有引數的寫法是 cursor cursor name is select statement 對於括號裡面的,in 左邊是引數的別名,in 右邊是引數的型別,...

Oracle中Cursor 游標 學習

一 概念 游標是sql的乙個記憶體工作區,由系統或使用者以變數的形式定義。游標的作用就是用於臨時儲存從資料庫中提取的資料塊。在某些情況下,需要把資料從存放在磁碟的表中調到計算機記憶體中進行處理,最後將處理結果顯示出來或最終寫回資料庫。這樣資料處理的速度才會提高,否則頻繁的磁碟資料交換會降低效率。二 ...