从oracle包调用存储过程

时间:2015-04-21 08:31:38

标签: sql oracle

这是我的sql

DECLARE
out_arg1 VARCHAR(30);
out_arg2 VARCHAR(30);
out_arg3 NUMERIC;
BEGIN
call MYPACKAGE.MyProcedure('A1405','3C',NULL,NULL,out_arg1 ,out_arg2 ,out_arg3 ,NULL);
dbms_output.put_line('Result 1: ' || out_arg1 );
dbms_output.put_line('Result 2: ' || out_arg2 );
dbms_output.put_line('Result 3: ' || out_arg3 );
END;

执行后我有这个例外

  

遇到符号" MYPACKAGE"当期待其中一个   以下...

我100%确定我有这个包,并且我有这个存储过程。此外,我有一个调用此过程的代码,一切正常,直到我尝试手动调用它。

你能告诉我我错过了什么吗?

1 个答案:

答案 0 :(得分:1)

尝试下列内容:

DECLARE
out_arg1 VARCHAR(30);
out_arg2 VARCHAR(30);
out_arg3 NUMERIC;
BEGIN
MYPACKAGE.MyProcedure('A1405','3C',NULL,NULL,out_arg1 ,out_arg2 ,out_arg3 ,NULL);
dbms_output.put_line('Result 1: ' || out_arg1 );
dbms_output.put_line('Result 2: ' || out_arg2 );
dbms_output.put_line('Result 3: ' || out_arg3 );
END;