Ich migriere eine vorhandene Testumgebung zu Amazon RDS PostgreSQL. Das Testframework verfügt über eine Funktion zum erneuten Laden von Daten in bestimmten Tabellen in einen früheren Zustand. Dazu werden Fremdschlüssel deaktiviert, vorhandene Daten gelöscht, der Sicherungsstatus geladen und Fremdschlüssel wieder aktiviert.
Derzeit deaktiviert das Testframework Fremdschlüssel, indem alle Trigger deaktiviert werden (dies erfordert natürlich einen Superuser):
alter table tablename disable trigger all;
Auf RDS schlägt dies fehl mit:
FEHLER: Berechtigung verweigert: "RI_ConstraintTrigger_a_20164" ist ein Systemtrigger
Wie kann ich Fremdschlüssel in Amazon RDS PostgreSQL vorübergehend deaktivieren?
Hinweis: Eine ähnliche Frage wurde bereits gestellt ( PostgreSQL auf RDS: Wie werden Daten mit FK-Einschränkungen in großen Mengen importiert? ), Es ging jedoch speziell um den Offline-Import, und die Lösung ist auch spezifisch für den Offline-Import.