我有一个从 Oracle 9i 存储过程中检索 SYS_REFCURSOR 输出的 .NET 应用程序。我想获取该光标并将其传递到另一个存储过程中以获得不同的作为回报。
松散的伪代码:
CREATE OR REPLACE PROCEDURE get_Addresses(
userList IN SYS_REFCURSOR,
addressList OUT SYS_REFCURSOR)
IS
OPEN addressList FOR (
SELECT * FROM Addresses A
WHERE A.UserID in (SELECT UserID from userList)
这样,我可以将用户信息列表(数据集)传递给存储的过程,并获取与传入的用户列表匹配的地址列表。
我不是一个 oracle 开发人员,但我希望有一种方法可以做到这一点,而不是循环遍历 .NET 中的数据集并为每一行打开/关闭一个 Oracle 连接。