Are functions automatically transactioned?
Started by Ciprian Popoviciabout 22 years ago2 messagesgeneral
I need to perform a couple of queries in a function and I need them to be in
the same transaction. I understand I can't start and stop transactions from
inside the functions. But are the contents of a function placed in a
transaction automatically by the server, or do I have to "manually" control
the transaction around the call to the function?
--
Ciprian Popovici
Re: Are functions automatically transactioned?
Ciprian, I just saw this in the online docs at
http://www.postgresql.org/docs/7.4/interactive/plpgsql-structure.html
It is important not to confuse the use of BEGIN /END for grouping
statements in PL/pgSQL with the database commands for transaction
control. PL/pgSQL 's BEGIN /END are only for grouping; they do not
start or end a transaction. Functions and trigger procedures are
always executed within a transaction established by an outer query
--- they cannot start or commit transactions, since PostgreSQL does not
have nested transactions.
HTH
Kevin Lohka
On Wednesday, April 7, 2004, at 03:43 PM, Ciprian Popovici wrote:
Show quoted text
But are the contents of a function placed in a
transaction automatically by the server, or do I have to "manually"
control
the transaction around the call to the function?--
Ciprian Popovici