Oracle在儲存過程中如何返回結果集

2021-07-08 12:47:48 字數 915 閱讀 7783

oracle和sqlserver不一樣的地方有很多。

個人最深的體會是儲存過程返回結果集,在sqlserver中直接select查詢就行,oracle就不行了。

這裡,就用最簡單的例子說明儲存過程返回結果集的例子

create

orreplace

procedure

儲存過程名(

欄位名

invarchar2,

l_result out types.rq_ref_cursor -- 包裡面方法名)is

str_sql

varchar2(8000) :=

'';

begin

str_sql:='

select * from tabelname where id=

'||欄位名;

open

l_result

forstr_sql;

endregion_linkage;

建立包(非必須)

create

orreplace package types as

type rq_ref_cursor

is ref cursor

;end;

建立包並非是必須的,將 ref cursor 直接加在儲存過程的out關鍵字後面也可以

另外補充上c#中呼叫儲存過程的通用方法

public datatable insertt_builditem(string

region_id)

catch

(exception e)

return ds.tables[0

]; }

相關文件

oracle初級教程:

在ORACLE儲存過程中建立臨時表

create procedure pro asstr varchar2 100 begin str create global temporary table tablename col1 varchar2 10 col2 number on mit preserve rows execute im...

oracle 在儲存過程中定義動態sql

表結構 create table item prop pid integer,name varchar2 20 is key prop integer,is sale prop integer,is color prop integer,parent pid integer,parent vid v...

在ORACLE儲存過程中建立臨時表

create procedure pro asstr varchar2 100 begin str create global temporary table tablename col1 varchar2 10 col2 number on commit preserve rows execute...