Подтвердить что ты не робот

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 выходной параметр. Я хочу распечатать выходной параметр. Это все.

Заранее благодарим за помощь.

Горан

4b9b3361

Ответ 1

Вы почти там, просто вытащите EXECUTE:

DECLARE
  procId NUMBER;

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

Ответ 2

Для тех, кто склонен использовать графический интерфейс пользователя:

Нажмите кнопку Right mouse на имени procecdure, затем выберите Test

введите описание изображения здесь

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

введите описание изображения здесь

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