Re: PL/PGSQL question on transactions

From: Christopher Kings-Lynne <chriskl(at)familyhealth(dot)com(dot)au>
To: Dan Schwitalla <acadrace(at)hotmail(dot)com>
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: PL/PGSQL question on transactions
Date: 2002-04-12 15:58:19
Message-ID: 20020412235806.Q91940-100000@houston.familyhealth.com.au
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

No - a function implicity runs in a transaction anyway.

Chris

On Fri, 12 Apr 2002, Dan Schwitalla wrote:

> Can you imbed BEGIN; and COMMIT; statements in the body of a pl/pgsql
> function?
>
> I am getting a parse error upon execution when I try it.
>
> Code:
>
> CREATE FUNCTION chitadj(integer,integer) RETURNS integer AS '
> DECLARE
> result integer;
> oldamount integer;
> BEGIN
> BEGIN;
> SELECT INTO oldamount chits FROM avatar
> WHERE avatar_id = $1;
>
> IF oldamount IS NULL THEN
> RETURN -1;
> END IF;
>
> IF ((oldamount < abs($2)) AND ($2 < 0)) THEN
> RETURN -2;
> END IF;
>
> result := oldamount + $2;
> RETURN result;
> COMMIT;
> END;
> ' language 'plpgsql';
>
>
>
> -------------------------
> Dan
>
> _________________________________________________________________
> Join the worlds largest e-mail service with MSN Hotmail.
> http://www.hotmail.com
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 6: Have you searched our list archives?
>
> http://archives.postgresql.org
>

In response to

Browse pgsql-sql by date

  From Date Subject
Next Message Peter Eisentraut 2002-04-12 16:24:33 Re: Functions in Postgres
Previous Message Dan Schwitalla 2002-04-12 15:50:01 PL/PGSQL question on transactions