Mam procedurę składowaną, którą chcę refaktoryzować, w bazie danych zawierającej tysiące SP. Czy istnieje szybki sposób na znalezienie odwołań do tej procedury przechowywanej w innych SP, aby mieć pewność, że nie łamię żadnego innego kodu podczas refaktoryzacji.
W kodzie aplikacji mogę łatwo wyszukać wywołania SP i mogę przeszukiwać tekst we wszystkich plikach SQL, które definiują SP, ale możliwe, że w bazie danych mogą być pewne SP, które mogą zostać pominięte w ten sposób .
EDYCJA: Procedury składowane, które próbuję zlokalizować, są częścią pakietu.
EDYCJA: Korzystam z Oracle 11g
oracle
stored-procedures
Peter Bagnall
źródło
źródło
DBA_DEPENDENCIES
pokaż nam bardziej, co zostanie unieważnione, jeśli dany obiekt zostanie upuszczony. Na przykład możesz znaleźć tabelę odsyłaczy.To wydaje się działać - jest mniej eleganckie niż odpowiedź @ MindaugasRiauba, ale wydaje się, że znajduje referencje ze wszystkich pakietów.
(Od Jak rozpoznać, czy używany jest pakiet, procedura lub funkcja PL / SQL? )
źródło
Miałem podobną sytuację, tyle że potrzebowałem pobrać listę pakietów, które używają określonego pakietu; więc zrobiłem to zapytanie, może to pomaga:
źródło