【问题标题】:ASP.NET DataSet from Oracle Stored Procedure来自 Oracle 存储过程的 ASP.NET 数据集
【发布时间】:2011-12-13 11:59:41
【问题描述】:

我从这个网站上阅读了很多问题和文章。 但是,我厌倦了寻找我想要操纵的东西。 在 SQL Server 中,我曾经调用过类似“EXEC Some_Procedure_name arg1, 'arg2', arg3, 'arg4'”的过程。 当输入参数为数字时,我不会使用单引号。 但是在 oracle 中,我真的需要编写类似使用输入和输出参数的东西吗? 假设过程如下:

CREATE OR REPLACE PROCEDURE GET_JOB
(
    p_JOB_ID IN varchar2,
    outCursor OUT MYGEN.sqlcur
)
IS
BEGIN
    OPEN outCursor FOR
    SELECT *
    FROM JOB
    WHERE JOB_ID = p_JOB_ID;
END GET_JOB;
/

然后我必须在我的 c# 代码中指定输入参数的名称,如下所示:

var userNameParameter = command.Parameters.Add("p_JOB_ID", Job_ID); 
returnValueParameter.Direction = ParameterDirection.In; 

我不能像“Execute GET_JOB 'j208';”这样称呼它吗?

【问题讨论】:

    标签: asp.net oracle dataset


    【解决方案1】:

    要从 Oracle 中的存储过程返回数据集,您需要使用“REF CURSOR”。

    这里有详细的解释,带有 .NET 的代码示例:

    http://www.oracle.com/technetwork/articles/dotnet/williams-refcursors-092375.html

    【讨论】:

    • 谢谢。我读过那篇文章。顺便说一句,也许你没有仔细阅读我的问题。我不是在问如何使用输出参考光标。我已经知道如何使用它了。但我在问如何使用像“Execute GET_JOB 'j208';”这样的语法在甲骨文中。你还有什么建议吗?
    猜你喜欢
    • 2011-05-21
    • 2023-03-05
    • 2016-08-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-05
    • 2011-05-05
    • 1970-01-01
    相关资源
    最近更新 更多