如何从SQL Plus执行存储过程?

前端之家收集整理的这篇文章主要介绍了如何从SQL Plus执行存储过程?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在oracle中有一个存储过程,想要从sqlPlus中测试它.

如果我使用

execute  my_stored_proc (-1,2,0.01)

我收到这个错误

PLS-00306: wrong number or types of arguments in call to my_stored_proc

proc的开始就是这个

create or replace PROCEDURE my_stored_proc
( a IN NUMBER,b IN NUMBER,c IN NUMBER,z out NUMBER
) AS ....

我是否需要为out参数提供一个var,是这样的?我试过了:

var z  NUMBER;

但是当我尝试运行proc时会出现此错误

execute  my_stored_proc (-1,0.01,z) 
PLS-00201: identifier 'Z' must be declared

此外,当我在sql-Developer中它给了我使用它并以相反的顺序显示输入,即:

execute my_stored_proc(z number,c number,b number,a number);

你是以相反的顺序提供它们还是只是用sql-Developer提供它们

我没有写程序,我通常不处理它们,所以我可能会遗漏一些明显的东西.

谢谢

解决方法

您有两个选项,PL / sql块或sql * Plus绑定变量:
var z number

execute  my_stored_proc (-1,:z)

print z

猜你在找的MsSQL相关文章