REF 動態SQL游標

2021-09-01 20:28:07 字數 1214 閱讀 8884

declare

tb_count number;

tb_datatype varchar2(100);

type refcur_finding is ref cursor;--ref 動態游標建立

refcur refcur_finding;

codevalue varchar2(100);

begin

tb_datatype := '財險';

/*驗證是否在資訊集範圍內*/

dbms_output.put_line('===★★★★★★*****驗證非空字段中是從資料字典中取數的字段【開始】*****★★★★★★====');

--員工基本資訊集【性別】字段資料字典資訊校驗

open refcur for --為查詢的sql動態開啟游標

select c_gender from (

select c_gender from tb_inf_employee group by c_gender

) a left join (

select c_code from tb_sys_codeitem where c_typecode = 'code_gendertype'

) b

on a.c_gender = b.c_code where b.c_code is null;

loop

fetch refcur into codevalue;

exit when refcur%notfound;

dbms_output.put_line('01 【員工基本資訊集】中【性別】資訊與資料字典資訊比較後,發現多出【'||codevalue||'】');

end loop;

dbms_output.put_line('-------員工基本資訊集【性別】字段校驗完成---------');

--select t.rowid,t.c_gender,t.c_oid from tb_inf_employee t where t.c_gender is null ;

dbms_output.put_line('===★★★★★★*****驗證非空字段中是從資料字典中取數的字段【結束】*****★★★★★★====');

dbms_output.put_line(tb_datatype||'--資料驗證結束');

end;

PL SQL 動態SQL 游標

1.使用動態sql可以在依賴物件不存在時建立子程式 2.動態sql主要利用execute immediate語句執行dml ddl dcl等語句操作 3.如果使用了繫結變數,則必須在execute immediate中使用using字句設定所需要的繫結變數 4.使用returning或return語...

什麼是 REF游標

1,什麼是 ref游標 動態關聯結果集的臨時物件。即在執行的時候動態決定執行查詢。2,ref 游標 有什麼作用?實現在程式間傳遞結果集的功能,利用ref cursor也可以實現bulk sql,從而提高sql效能。3,靜態游標和ref 游標的區別是什麼?靜態游標是靜態定義,ref 游標是動態關聯 使...

ORACLE中帶引數 REF游標及動態SQL例項

帶 引數的游標 declare dept code emp.deptno type 宣告列型別變數三個 emp code emp.empno type emp name emp.ename type cursor emp cur deptparam number is select empno,en...