J'ai besoin d'une méthode généralisée pour obtenir la liste des paramètres d'exécution (valeurs) lorsque j'appelle une procédure. J'ai besoin de quelque chose de similaire à la $$PLSQL_UNIT qui renvoie le nom de la procédure en cours d'exécution. (plsql Oracle 10g)
Par exemple, regardez cet exemple de procédure : (elle imprime simplement son propre nom et ses paramètres)
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;
/
L'exécution de la procédure produit le résultat suivant :
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.
Je ne suis pas satisfait parce que je ne peux pas copier et coller toutes mes procédures car je dois coder en dur chaque procédure pour définir les variables de paramètres appropriées.
Merci d'avance pour votre aide.