From: | udono <udono(at)gmx(dot)net> |
---|---|
To: | pgsql-de-allgemein(at)postgresql(dot)org |
Subject: | Re: Trigger und Funktion |
Date: | 2007-03-08 12:12:16 |
Message-ID: | 45EFFDA0.6080209@gmx.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-de-allgemein |
Hi Matthias,
Matthias Zirngibl schrieb:
>> Wie aber weiss ich vor der Transaktion, das die Summe der
>> Teilbuchungen 0 ergibt?
>> Mit bspw. SELECT sum(amount) WHERE trans_id = 13 kann ich ja noch
>> nicht arbeiten, weil die Transaktion noch nicht commitet wurde und
>> ja auch vorher geprüft werden soll.
>> (Es stehen PL/pgSQL und PL/Perl zur Verfügung)
>> Vielleicht hat jemand von euch einen Tip?!
> Hast Du schonmal dran gedacht, anstelle direkt in die Tabelle(n) zu
> schreiben, das ganze über eine Stored Procedure zu machen.
Ja hab ich - mit Grauen :-) Ich dacht das irgendwie umschiffen zu
können, weil ich noch keinerlei Erfahrung mit Stored Procedures
habe. Auch die Sache mit den vielen Apostrophen macht mir difusee
Gänsehaut... aber ich befürchte, das ist der einzig verbleibende Weg
und ich werde mich wohl mal reinknien müssen...
> Also gar
> nicht bis zum Trigger / Insert kommen zu lassen, sondern in der
> Prozedur vorab zu überprüfen.
Ja letztendlich ist das die von mir gewünschte Funktionsweise: Erst
die Integrität der Datensätze überprüfen (Summe amount = 0), und
dann entweder INSERT / UPDATE ausführen oder Fehler auslösen.
Dazu werde ich mich sicher nochmal melden...
Vielen Dank.
Viele Grüße Udo
From | Date | Subject | |
---|---|---|---|
Next Message | Andreas Kretschmer | 2007-03-08 12:13:22 | Re: Trigger und Funktion |
Previous Message | rene hankel | 2007-03-08 12:03:35 | Re: Trigger und Funktion |