oracle - 在SQL Developer中运行存储过程?
我试图运行具有多个输入和输出参数的存储过程。 只能通过导航其他用户|在我的“连接”面板中查看该过程| 包裹||
如果我右键单击,则菜单项为“Order Members By ...”和“Create Unit Test”(灰色显示)。 当用户访问过程时,似乎无法“运行”该过程。
我一直试图找到一个如何创建匿名块的示例,以便我可以将该过程作为SQL文件运行,但是没有找到任何有效的方法。
有谁知道如何从SQL Developer执行此过程? 我使用的是版本2.1.1.64。
提前致谢!
编辑1:
我要调用的程序有这个签名:
user.package.procedure(
p_1 IN NUMBER,
p_2 IN NUMBER,
p_3 OUT VARCHAR2,
p_4 OUT VARCHAR2,
p_5 OUT VARCHAR2,
p_6 OUT NUMBER)
如果我写这样的匿名块:
DECLARE
out1 VARCHAR2(100);
out2 VARCHAR2(100);
out3 VARCHAR2(100);
out4 NUMBER(100);
BEGIN
EXECUTE user.package.procedure (33,89, :out1, :out2, :out3, :out4);
END;
我收到错误:
Bind Varialbe "out1" is NOT DECLCARED
anonymous block completed
我已经尝试初始化out *变量:
out1 VARCHAR2(100) := '';
但得到同样的错误:
编辑2:
根据Alex的回答,我尝试从params前面移除冒号并得到:
Error starting at line 1 in command:
DECLARE
out1 VARCHAR2(100);
out2 VARCHAR2(100);
out3 VARCHAR2(100);
out4 NUMBER(100);
BEGIN
EXECUTE user.package.procedure (33,89, out1, out2, out3, out4);
END;
Error report:
ORA-06550: line 13, column 17:
PLS-00103: Encountered the symbol "USER" when expecting one of the following:
:= . ( @ % ; immediate
The symbol "