On Thu, Jul 19, 2007 at 02:53:50PM +0300, Abraham, Danny wrote: > Fails on: Cannot run inside a transaction block.
PostgreSQL functions run in the context of a transaction so they can't execute statements that aren't allowed inside a transaction block. A workaround is to have the function connect to the database via contrib/dblink (or dbi-link, or some such mechanism) and execute the statements over that connection. Caveat: if the function's transaction rolls back then statements already committed over the connection won't be rolled back. -- Michael Fuhr ---------------------------(end of broadcast)--------------------------- TIP 2: Don't 'kill -9' the postmaster