Re: plgpsql and transactions - Mailing list pgsql-general

From Terry Lee Tucker
Subject Re: plgpsql and transactions
Date
Msg-id 200604061444.57241.terry@esc1.com
Whole thread Raw
In response to plgpsql and transactions  (Bill Moseley <moseley@hank.org>)
Responses Re: plgpsql and transactions  (Bill Moseley <moseley@hank.org>)
List pgsql-general
On Thursday 06 April 2006 02:36 pm, Bill Moseley saith:
> In a BEFORE INSERT trigger, depending on input values, I need to lock
> a table and do a few selects.  Of course, the "lock table" isn't much
> use if not currently in a transaction.
>
> So my question is this:  can I tell if I'm inside a transaction or
> not and issue a BEGIN if not.  And then also set a flag so that after
> the INSERT I can detect that I issued a BEGIN and do a COMMIT?
>
> Or, maybe better is to just throw an exception if not already inside a
> transaction.
>
> BTW -- it seems odd to me that you can issue a lock table outside of
> an explicit begin/commit and not get a warning.  When would issuing a
> lock table outside an explicit transaction be of any use?
>
>
> --
> Bill Moseley
> moseley@hank.org
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: if posting/reading through Usenet, please send an appropriate
>        subscribe-nomail command to majordomo@postgresql.org so that your
>        message can get through to the mailing list cleanly

Bill,

Triggers fire inside a transaction.

pgsql-general by date:

Previous
From: MargaretGillon@chromalloy.com
Date:
Subject: Re: Unique constraint or index, case insensitive, on multiple
Next
From: Douglas McNaught
Date:
Subject: Re: Backup method