Patrick Welche wrote: > On Thu, May 13, 2004 at 11:41:24AM +0200, Christian Rank wrote: > >> create function f () returns void as ' >> begin >> delete from a; >> delete from b; >> return; >> end; >> ' language plpgsql; >> >>I would expect that >> >> select f(); >> >>yields an error message about constraint violation when executing >>'delete from a;'. > > > Off the top of my head, the constraints would be checked when the > transaction ends, i.e., after both the "delete from a" and "delete from b" > happened. Split into 2 transactions? Thanks for this suggestion, but I think this does not solve the issue, since according to the docs, the validity of a constraint should be checked after each statement unless this behaviour is altered with a SET CONSTRAINTS statement. Anyway, the select f(); is in my case not executed in transactional context (not embraced by START TRANSACTION; ... COMMIT;). Regards, Christian -- Dr. Christian Rank Rechenzentrum Universität Passau Innstr. 33 D-94032 Passau GERMANY Tel.: 0851/509-1838 Fax: 0851/509-1802 PGP public key see http://www.rz.uni-passau.de/mitarbeiter/rank ---------------------------(end of broadcast)--------------------------- TIP 4: Don't 'kill -9' the postmaster