Re: Trigger und Funktion
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
Home |
Main Index |
Thread Index