Eu tenho um procedimento armazenado que eu quero refatorar, em um banco de dados que possui milhares de SPs. Existe uma maneira rápida de encontrar referências a esse procedimento armazenado em outros SPs, para ter certeza de que não estou quebrando nenhum outro código ao refatorar.
No código do aplicativo, posso procurar chamadas para o SP com bastante facilidade e fazer uma pesquisa de texto em todos os vários arquivos sql que definem os SPs, mas é possível que haja alguns SPs no banco de dados que possam ser perdidos dessa maneira .
EDIT: Os procedimentos armazenados que estou tentando localizar fazem parte de um pacote.
EDIT: Estou executando no Oracle 11g
oracle
stored-procedures
Peter Bagnall
fonte
fonte
DBA_DEPENDENCIES
mostre-nos mais como o que será invalidado se um objeto específico for descartado. Então, por exemplo, você pode encontrar o que vê a tabela de referências.Parece funcionar - é menos elegante que a resposta do @ MindaugasRiauba, mas parece encontrar referências de todos os pacotes.
(De Como você pode saber se um Pacote, Procedimento ou Função PL / SQL está sendo usado? )
fonte
Eu tive uma situação semelhante, só que precisava recuperar uma lista de pacotes que usam um pacote específico; então eu fiz essa consulta, talvez ajude:
fonte