Oracle
 sql >> Database >  >> RDS >> Oracle

Ottieni il nome della procedura o della funzione chiamante in Oracle PL/SQL

C'è un pacchetto chiamato OWA_UTIL (che non è installato per impostazione predefinita nelle versioni precedenti del database). Questo ha un metodo WHO_CALLED_ME() che restituisce OWNER, OBJECT_NAME, LINE_NO e CALLER_TYPE. Si noti che se il chiamante è una procedura in pacchetto restituirà il nome PACKAGE non il nome della procedura. In questo caso non c'è modo di ottenere il nome della procedura; questo perché il nome della procedura può essere sovraccaricato, quindi non è necessariamente molto utile.

Scopri di più.

Dal 10gR2 c'è anche il $$PLSQL_UNIT funzione speciale; questo restituirà anche il NOME DELL'OGGETTO (cioè la procedura del pacco non imballato).