From: | Tobias Bußmann <e(dot)t(dot)bussmann(at)ing(dot)twinwave(dot)net> |
---|---|
To: | <pgsql-de-allgemein(at)postgresql(dot)org> |
Subject: | Re: PL/pgSQL / iterieren mit Feldnamen und Datentypen |
Date: | 2005-05-31 20:20:01 |
Message-ID: | 020801c5661e$2301a6d0$0164a8c0@LaptopTB |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-de-allgemein |
Hallo Elmar,
das Thema iterien über Spalten in einem pgSQL Record (OLD / NEW) hat mich
auch schon mal viele Nerven gekostet. Ich konnte leider bislang keine Lösung
finden. Es soll aber unter TCL möglich sein, damit habe ich mich aber noch
nicht weiter befasst. Wenn du eine Lösung findest, würde ich mich sehr über
eine Nachricht freuen. Das Problem scheint der Datentyp der NEW/ OLD-Objekte
zu sein, der wohl (noch) nicht gescheit implementiert ist. So kann dieser
auch nicht an andere Funktionen übergeben werden. Habe mal eine Diskussion
diesbezüglich auf der PostgeSQL-Developer-Liste gelesen.
viel Erfolg :)
Tobias
Elmar Zorn <e(dot)zorn(at)rdg-rational(dot)de> wrote:
> Hallo zusammen,
>
> ich möchte *eine allg.* Trigger Procedure schreiben die für diverse
> Tabellen mit unterschiedlichsten
> Strukturen bei einem UPDATE/INSERT/DELETE das oder die geänderten
> Felder in eine LOG-Tabelle
> schreiben. Die LOG-Tabelle soll den Feldname, Datentyp, den alten und
> neuen Wert des Feldes sowie den
> Tabellennamen enthalten.
>
> Meine FRAGEN:
>
> 1. Da es *eine* Trigger Procedure für ca. *60 versch.* Tabellen sein
> soll muss ich über NEW.* bzw. OLD.*
> iterieren um jeweils den Feldname, Datentyp, den alten und neuen
> Wert des Feldes zu ermitteln
> und daraus das INSERT Statement für die LOG-Tabelle zu erstellen.
> Wie kann man über NEW.* iterieren und z. B. den Feldnamen und
> Datentyp ermitteln und den Feldwert mit dem
> jeweiligen OLD.* vergleichen ??? Oder ist das zu "generisch" für
> PL/pgSQL ?
>
>
> 2. Welches sind die Systemtabelle in denen Datentypen und
> Tabellenstrukturen abgelegt sind ???
>
>
> 3. Welches Buch würdet Ihr empfehlen für PL/pgSQL ???
>
> ---------------------------(end of
> broadcast)--------------------------- TIP 1: subscribe and
> unsubscribe commands go to majordomo(at)postgresql(dot)org
From | Date | Subject | |
---|---|---|---|
Next Message | Goran V. | 2005-06-02 14:20:06 | Constraints & Regex |
Previous Message | Kretschmer Andreas | 2005-05-31 15:25:31 | Re: PL/pgSQL / iterieren mit Feldnamen und Datentypen |