2012-11-07 171 views
0

我完全不熟悉Oracle,我需要編寫一個將返回結果集的存儲過程。存儲過程將使用鏈接服務器從SQL Server中調用。 我知道我可以使用ref cursor從PL/SQL服務器返回一個結果集,但我也看到存儲過程返回數組的排序(例如Table of Number聲明),然後返回結果。 這是正確的方法嗎?Oracle存儲過程返回結果集

+0

我認爲你會從Java調用你的過程。在這種情況下,程序將直接從Oracle或通過SQL Server調用? – user75ponic

+0

該過程將使用鏈接服務器從SQL Server調用。 –

回答

0

經過對Oracle論壇和我自己的測試的一些調查... 參考光標是一個適當的方法。 使用oracle oledb提供程序,相關數組無法正常工作。

+0

需要注意的一點是,如果查詢跨越oracle服務器上的數據庫鏈接,則不能返回引用遊標。兩個限制在一起是一個超級痛苦。 – Jesse

+0

那麼,它將通過SQL Server中的鏈接服務器來實現,但直接來自Oracle,我已經對它進行了測試,確實有效。 –

+1

對不起,我還不是很清楚,如果您在Oracle中通過db鏈接進行連接或查詢,則無法返回引用遊標。 – Jesse