oracle筆記七(游標變數)

2021-08-30 12:21:13 字數 834 閱讀 7737

游標變數:

游標變數是動態的,而游標是靜態的。游標只能與指定的查詢相連,即固定指向乙個查詢的記憶體處理區域,而游標變數則可與不同的查詢語句相連,它可以指向不同查詢語句的記憶體處理區域(但不能同時指向多個記憶體處理區域,在某一時刻只能與乙個查詢語句相連),只要這些查詢語句的返回型別相容即可)

declare

type emp_job_record_type is record(

v_empno emp.empno%type,

v_ename emp.ename%type,

v_job emp.job%type

);type emp_ref_cur_type is ref cursor return emp_job_record_type;

-- 為游標變數的返回值型別,它必須為記錄變數(強型別游標變數)

emp_job_record emp_job_record_type;

emp_ref_cur emp_ref_cur_type;

begin

open emp_ref_cur for select empno,ename,job from emp;

loop

fetch emp_ref_cur into emp_job_record;

exit when emp_ref_cur%notfound;

dbms_output.put_line(emp_job_record.v_empno || ','||emp_job_record.v_ename ||','||emp_job_record.v_job);

end loop;

close emp_ref_cur;

end;

簡述Oracle游標變數

游標變數和顯示游標的用法基本相同。游標變數的不同之處在於可以在不同程式之間作為引數進行傳遞。宣告游標變數 游標變數型別分為強型別和弱型別兩種,如下所示 type cursortypename is ref cursor return returntype 強型別 type cursortypenam...

oracle游標筆記

游標 cursor 也叫游標,在關聯式資料庫中經常使用,在pl sql程式中可以用cursor與select一起對錶或者檢視中的資料進行查詢並逐行讀取。oracle游標分為顯示游標和隱式游標。顯示游標 explicit cursor 在pl sql程式中定義的 用於查詢的游標稱作顯示游標。隱式游標 ...

ORACLE 游標和游標變數的區別

如何定義游標型別 type ref type name is ref cursor return return type 宣告游標變數 cursor name ref type name 從技術底層看,兩者是相同的。普通plsql cursor在定義時是 靜態 的。而ref cursors可以動態開...