【发布时间】:2016-09-01 14:15:32
【问题描述】:
这是我的存储过程:
CREATE OR REPLACE PROCEDURE STATS_SD
(
P_ID IN NUMBER,
PRC OUT SYS_REFCURSOR
)
IS
BEGIN
OPEN PRC FOR
SELECT
ID,
SESID
FROM RESPONSES
WHERE ID IN (P_ID)
END;
当我尝试使用
执行它时EXEC EXAM_STATS_STUDENTS_SD('6901');
我收到以下错误:
PLS-00306:调用“STATS_SD”时参数的数量或类型错误
你有什么想法吗?
【问题讨论】:
-
你做过研究吗? SO中有一些类似的问题,比如:stackoverflow.com/questions/10024771/…
-
你的程序是
STATS_SD,它接受2个参数...那么你到底在用EXAM_STATS_STUDENTS_SD('6901')执行什么? -
拥有一个带有一个输出参数的过程可能是一个很好的函数候选者。
-
你的输入参数是NUMBER,你在exec命令中传递了一个VARCHAR2
-
我的错。我最初使用不带引号的数字,只是尝试使用带引号的数字。没有引号也行不通:(