我在oracle中有一个存储过程,想要从SQLPlus中测试它.
如果我使用
execute my_stored_proc (-1,2,0.01)
Run Code Online (Sandbox Code Playgroud)
我收到这个错误
PLS-00306: wrong number or types of arguments in call to my_stored_proc
Run Code Online (Sandbox Code Playgroud)
proc的开始就是这个
create or replace PROCEDURE my_stored_proc
( a IN NUMBER,
b IN NUMBER,
c IN NUMBER,
z out NUMBER
) AS ....
Run Code Online (Sandbox Code Playgroud)
我是否需要为out参数提供一个var,是这样的?我试过了:
var z NUMBER;
Run Code Online (Sandbox Code Playgroud)
但是当我尝试运行proc时会出现此错误
execute my_stored_proc (-1,2,0.01,z)
PLS-00201: identifier 'Z' must be declared
Run Code Online (Sandbox Code Playgroud)
此外,当我在SQL-Developer中它给了我用法,它以相反的顺序显示输入,即:
execute my_stored_proc(z number,c number,b number,a number);
Run Code Online (Sandbox Code Playgroud)
你是以相反的顺序提供它们还是只是用SQL-Developer提供它们
我没有编写程序,我通常不会处理它们,所以我可能会遗漏一些明显的东西.
谢谢