-3
我是Oracle的新手,我想構建一個解決方案以獲取返回列的列表REF_CURSOR
,並且在DB上創建數據庫對象有一些限制,因此我想要運行數據庫對象 存儲過程並在C#腳本中返回REF_CURSOR
數據。使用C#從OUT REF_CURSOR中檢索列
我是Oracle的新手,我想構建一個解決方案以獲取返回列的列表REF_CURSOR
,並且在DB上創建數據庫對象有一些限制,因此我想要運行數據庫對象 存儲過程並在C#腳本中返回REF_CURSOR
數據。使用C#從OUT REF_CURSOR中檢索列
後端過程可能是這樣的:
procedure my_proc(
p_id in number,
p_cursor out sys_refcursor
) is
begin
open p_cursor for
select col1, col2, col3
from my_table
where id = p_id;
end my_proc;
,然後在C#腳本聲明的2參數調用,設置第二個參數作爲輸出(方向= ParameterDirection.Output)和類型OracleDbType.RefCursor(請記住在對象/類的開頭添加名稱空間'Oracle.DataAccess.Client'和'Oracle.DataAccess.Types')。
不要忘記關閉數據讀取器以及連接,否則你會讓你的DBA用紅眼睛和血腥的f牙敲門。
你能發表一些代碼嗎?看看[如何提出一個好問題](https://stackoverflow.com/help/how-to-ask)以提高獲得回覆的機會。 – Sandman
您應該使用ODP.NET,然後閱讀http://docs.oracle.com/cd/B19306_01/win.102/b14307/featRefCursor.htm –