Czy istnieje sposób, aby usunąć wszystkie wyzwalacze ze wszystkich tabel w PostgreSQL? Wiem, że istnieje tabela pg_trigger, na którą mogłem spojrzeć, ale nie wygląda na to, że zawiera wystarczająco dużo informacji, aby odszyfrować wyzwalacze, które dodałem do moich tabel.Zrzuć WSZYSTKIE wyzwalacze z bazy Postgres DB?
Wygląda również na to, że ograniczenia klucza obcego pojawiają się w tabeli pg_trigger, której NIE chcę upuszczać. Chcę po prostu usunąć wyzwalacz utworzony przez użytkownika z moich tabel i zachować FK.
Wszelkie sugestie?
Dzięki za złapanie tego! – JamesD
To jest drugi raz, gdy ta odpowiedź mi pomoże, chciałbym dać +1 ponownie, gdybym mógł –
"information_schema" nie ma wyzwalaczy TRUNCATE, więc użyj czegoś takiego: SELECT tgname AS trigger_name, relname AS event_object_table FROM pg_trigger INNER JOIN pg_class ON pg_class .oid = tgrelid' – Lloeki