Próbuję uruchomić procedurę składowaną, która ma wiele parametrów wejścia i wyjścia. Procedurę można wyświetlić tylko w moim panelu Połączenia, przechodząc do opcji Inni użytkownicy | | Pakiety | |
Jeśli kliknę prawym przyciskiem myszy, pozycje menu to „Zamów członków według ...” i „Utwórz test jednostkowy” (wyszarzone). Możliwość „Uruchomienia” procedury nie wydaje się możliwa, gdy użytkownik uzyskuje do niej dostęp.
Próbowałem znaleźć przykład, jak utworzyć anonimowy blok, aby móc uruchomić procedurę jako plik SQL, ale nie znalazłem niczego, co działa.
Czy ktoś wie, jak mogę wykonać tę procedurę od SQL Developer? Używam wersji 2.1.1.64.
Z góry dziękuję!
EDYCJA 1:
Procedura, którą chcę wywołać, ma następujący podpis:
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)
Jeśli napiszę swój anonimowy blok w ten sposób:
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;
Wyskakuje mi błąd:
Bind Varialbe "out1" is NOT DECLCARED
anonymous block completed
Próbowałem zainicjować zmienne out *:
out1 VARCHAR2(100) := '';
ale pojawia się ten sam błąd:
EDYCJA 2:
Opierając się na odpowiedzi Alexa, spróbowałem usunąć dwukropki sprzed parametrów i otrzymałem to:
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 ":=" was substituted for "USER" to continue.
06550. 00000 - "line %s, column %s:\n%s"
*Cause: Usually a PL/SQL compilation error.
*Action: