Wprowadzenie:
Baza danych PostgreSQL zawierająca kilkaset zapisanych funkcji, w tym przestarzałe, nieużywane itp.
Problem
Muszę znaleźć wszystkie przechowywane funkcje, które mają jakikolwiek związek z tabelą X - ponieważ chcę zmienić strukturę tabeli. Niektóre z nich mogą nie być używane, więc nie mogę tego zrobić, przeglądając kod.
Rozwiązaniem, które mam ATM, jest uruchomienie psql \df+
i grepping, ale wolałbym rozwiązanie bardziej podobne do bazy danych, tj. Przy użyciu schematu informacji. To z pewnością będzie powtarzalne zadanie i chciałbym, aby było ładnie i czysto.
Jakieś sugestie?
źródło
EXECUTE
wyrażeń takich jak'mm_'||name_parameter
i nie poradzi sobie poprawnie z cytowanymi nazwami takimi jak"my""table""
lub ze składaniem liter, ale zrobi większość tego, czego większość ludzi będzie chciała .EXECUTE
są prawie niemożliwe do pokrycia. Ale składanie skrzynek może być pokryte~*
zamiast~
- lub innym dopasowaniem wzorca bez rozróżniania wielkości liter."MyTable"
aMyTable
przynajmniej ... i szczerze mówiąc, jest to „no, może być dozwolone, ale nie jest to mądre” posunięcie.To zapytanie jest dość łatwe w użyciu:
źródło