doc: Clarify some wording in PL/pgSQL about transactions

Some text was still claiming that committing transactions was not
possible in PL/pgSQL.
This commit is contained in:
Peter Eisentraut 2018-08-22 15:42:22 +02:00
parent 0a63f996e0
commit 7ceb6fb84c
1 changed files with 3 additions and 4 deletions

View File

@ -305,10 +305,9 @@ $$ LANGUAGE plpgsql;
for transaction
control. <application>PL/pgSQL</application>'s <command>BEGIN</command>/<command>END</command>
are only for grouping; they do not start or end a transaction.
Functions are always executed within a transaction
established by an outer query &mdash; they cannot start or commit that
transaction, since there would be no context for them to execute in.
However, a block containing an <literal>EXCEPTION</literal> clause effectively
See <xref linkend="plpgsql-transactions"/> for information on managing
transactions in <application>PL/pgSQL</application>.
Also, a block containing an <literal>EXCEPTION</literal> clause effectively
forms a subtransaction that can be rolled back without affecting the
outer transaction. For more about that see <xref
linkend="plpgsql-error-trapping"/>.