Potrzebuję uogólnionej metody, aby uzyskać listę parametrów wykonawczych (wartości) podczas wywoływania procedury. Potrzebuję czegoś podobnego do $$ PLSQL_UNIT, która zwraca nazwę uruchomionej procedury. (Oracle 10g plsql)oracle plsql: pobieranie wartości parametrów środowiska wykonawczego podczas wywoływania procedury
E.g. spojrzeć na tą procedurą próbkowania: (to po prostu drukuje własną nazwę i parametry)
CREATE OR REPLACE PROCEDURE MY_PROC(ow in varchar2, tn IN varchar2)
IS
BEGIN
dbms_output.put_line('proc_name: '||$$PLSQL_UNIT||' parameters: '|| ow||' '||tn );
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('ERRORE: ' ||SQLERRM);
END MY_PROC;
/
procedurę bieganie daje następujące wyjście:
SQL>
1 BEGIN
2 IBAD_OWN.MY_PROC('first_par', 'second_par');
3 END;
4/
proc_name: MY_PROC parameters: first_par second_par
PL/SQL procedure successfully completed.
Ja nie spełniają, bo nie można kopiować i wklej do wszystkich moich procedur, ponieważ muszę mocno zakodować każdą procedurę, aby ustawić odpowiednie zmienne parametrów.
Z góry dziękujemy za pomoc.
możliwy duplikat adresu http://stackoverflow.com/questions/12160928/get-a-parameters-name/? – tbone
tak, myślę, że to to samo pytanie. Oba bez odpowiedzi :(Myślę, że nie ma sposobu na uzyskanie wartości parametrów :( – tortugone
Nie wydaje mi się, że jest to to samo pytanie: Pytasz o _wartości parametru bez znajomości jego nazwy. w a, teraz usunięta, odpowiedź iw połączonym pytaniu znalezienie nazwy parametru jest łatwe, ale nie wartość tego parametru – Ben