0
我的Oracle程序结构,如何调用Oracle的过程,它具有一个OUT参数
CREATE OR REPLACE PACKAGE BODY NLS_ADMIN."MY_PKG"
AS
PROCEDURE DATA_PRC (oresult OUT NUMBER)
IS
varKeyValue varchar2(1);
BEGIN
...
...
END;
我试图通过下面的语句执行上面的程序调用,
declare
oresult NUMBER;
begin
EXECUTE DATA_PRC(oresult);
end;
但是,得到下面的异常。请帮助我如何调用这个程序。
ORA-06550: line 8, column 9:
PLS-00103: Encountered the symbol "DATA_PRC" when expecting one of the following:
:= . (@ % ; immediate
The symbol ":=" was substituted for "DATA_PRC" to continue.
首先,删除执行,它是SQL * Plus命令,不是PL/SQL语句。其次,因为你的过程被放置在一个包中,所以在被引用时('my_pkg.data_prc'),它必须被包的名称限定。第三,确保程序声明也出现在程序包规范中,否则程序在程序包主体中是局部的,这意味着您将无法在程序包主体 –