Oracle: вызов хранимой процедуры внутри пакета

Я не очень в Oracle. Я использую PL / SQL Developer.

у меня есть следующий пакет:

create or replace package PKG1
as
procedure INIT
(
  nRN                       in number,
  nREC_TYPE                 in number,
  nIDENT                    out number
);

Я не уверен, как вызвать его из среды разработчика PL/SQL. Я пробовал это:

DECLARE
  procId NUMBER;

BEGIN
  EXECUTE PKG1.INIT(1143824, 0, procId);
  DBMS_OUTPUT.PUT_LINE(procId);
END;

но, есть ошибка ORA-06550 (PLS-00103).

Как вы можете видеть у меня есть 2 входных и 1 выходной параметр. Я хочу распечатать выходной параметр. Вот и все.

заранее спасибо за помощь.

Горан

2 ответов


вы почти там, просто выньте EXECUTE:

DECLARE
  procId NUMBER;

BEGIN
  PKG1.INIT(1143824, 0, procId);
  DBMS_OUTPUT.PUT_LINE(procId);
END;

для тех, кто склонен использовать GUI:

клик Правой Кнопкой Мыши кнопка на имя procecdure затем выберите Test

enter image description here

затем в новом окне вы увидите сгенерированный скрипт, просто добавьте параметры и нажмите на Start Debugger или F9

enter image description here

надеюсь, это сэкономит вам время.