加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

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

发布时间:2020-12-12 06:49:37 所属栏目:MsSql教程 来源:网络整理
导读:我在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_
我在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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读