Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Obtenha o nome do procedimento ou função de chamada no Oracle PL/SQL


Existe um pacote chamado OWA_UTIL (que não é instalado por padrão em versões mais antigas do banco de dados). Isso tem um método WHO_CALLED_ME() que retorna OWNER, OBJECT_NAME, LINE_NO e CALLER_TYPE. Observe que, se o chamador for um procedimento empacotado, ele retornará o nome do PACOTE e não o nome do procedimento. Neste caso não há como obter o nome do procedimento; isso ocorre porque o nome do procedimento pode ser sobrecarregado, portanto, não é necessariamente muito útil.

Descubra mais.

Desde 10gR2 existe também o $$PLSQL_UNIT função especial; isso também retornará o OBJECT NAME (ou seja, o procedimento do pacote não empacotado).