From: | Alvaro Herrera <alvherre(at)commandprompt(dot)com> |
---|---|
To: | Dennis Brakhane <brakhane(at)googlemail(dot)com> |
Cc: | Reg Me Please <regmeplease(at)gmail(dot)com>, pgsql-general(at)postgresql(dot)org |
Subject: | Re: Transactions within a function body |
Date: | 2008-10-02 00:34:42 |
Message-ID: | 20081002003442.GG3878@alvh.no-ip.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general pgsql-hackers |
Dennis Brakhane escribió:
> On Wed, Oct 1, 2008 at 5:54 PM, Reg Me Please <regmeplease(at)gmail(dot)com> wrote:
> > Hi all.
> >
> > Is there a way to have (sub)transactions within a function body?
> > I'd like to execute some code (a transaction!) inside a function and later
> > decide whether that transaction is to be committed or not.
>
> You could issue a "SAVEPOINT name". If at the end you don't want your
> changes to apply, you can issue a "ROLLBACK to name"
Actually you can't use SAVEPOINT nor ROLLBACK TO within a function. In
PL/pgSQL you can use EXCEPTION blocks (if you don't like the changes,
just do a RAISE EXCEPTION, and the exception block is run).
--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support
From | Date | Subject | |
---|---|---|---|
Next Message | Gurjeet Singh | 2008-10-02 01:22:56 | Re: Fwd: Has anyone built pgbash-7.3 against postgreSQL-8.3? |
Previous Message | Harvey, Allan AC | 2008-10-01 23:32:15 | Re: inserting only new rows from csv file |
From | Date | Subject | |
---|---|---|---|
Next Message | Hitoshi Harada | 2008-10-02 01:16:47 | Re: Common Table Expressions (WITH RECURSIVE) patch |
Previous Message | Aidan Van Dyk | 2008-10-02 00:17:40 | Re: Block-level CRC checks |