2016-08-04 8 views
-3

Für jede Abfrage, die ich an eine der Tabellen sende, möchte ich, dass sie automatisch dieselbe Abfrage für einen Klon dieser Tabelle erstellt.Postgres Trigger?

Zum Beispiel, Ich habe eine sales_invoice Tabelle. Jede Einfügung/Aktualisierung/Löschung löst eine Einfügung in die Tabelle sales_invoice_clone aus. Außerdem möchte ich, dass es beim Auslösen einen Text zum Kommentarfeld der Klon-Tabelle hinzufügt. Der Kommentar wird entweder "Operation einfügen", "Operation aktualisieren" oder "Operation löschen" sein.

Wie mache ich das?

+1

Haben Sie schon einmal etwas versucht? – Mureinik

+0

Ich bin immer noch ein Noob in Postgres, also wenn Sie mit einem einfachen Beispiel helfen können, wird es mir ein wenig Licht geben, es auszuprobieren –

Antwort

0

Sie können die PostgreSQL triggers verwenden. Weitere Informationen finden Sie in der Dokumentation oder zeigen Sie den Code, den Sie bereits haben und wo Sie stecken bleiben.

Here ist die Beschreibung zum Auslösen von Prozeduren.

CREATE TRIGGER trigger_clone AFTER INSERT OR UPDATE OR DELETE ON your_table 
    FOR EACH ROW EXECUTE PROCEDURE clone(); 

wo Klon ist Ihr Verfahren, um den Vorgang zu klonen. Ansonsten denkst du über eine Replikation?