我从这个网站上读过很多问题和文章。 但是我厌倦了寻找我想要操纵的东西。 在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;
我不能把它称为“执行GET_JOB'j208';”?
答案 0 :(得分:0)
要从Oracle中的存储过程返回数据集,您需要使用“REF CURSOR”。
使用.NET的代码示例详细解释了这一点:
http://www.oracle.com/technetwork/articles/dotnet/williams-refcursors-092375.html