Re: lastval() - Mailing list pgsql-patches

From Bruce Momjian
Subject Re: lastval()
Date
Msg-id 200505110344.j4B3icX03053@candle.pha.pa.us
Whole thread Raw
In response to Re: lastval()  (Abhijit Menon-Sen <ams@oryx.com>)
List pgsql-patches
Abhijit Menon-Sen wrote:
> At 2005-05-10 23:30:05 -0400, pgman@candle.pha.pa.us wrote:
> >
> > > By the way, what would lastval() do if an insert trigger inserts
> > > a row into a table with another serial column?
> >
> > It fails, just like it would fail now if the trigger inserted into
> > the same table that used the trigger, or a rule.
>
> I don't understand what you mean. "Just like it would fail now"? It
> doesn't exist yet, how can it fail? And how would it know when to
> fail anyway, rather than return a wrong value?

Uh, if the table's sequence name is 'tab_x_seq', and you do
currval('tab_x_seq'), you will get the trigger or rule insert id in that
case.

So, currval() widens a problem we already have if the rule/trigger
inserts into the same table.

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

pgsql-patches by date:

Previous
From: "John Hansen"
Date:
Subject: Re: lastval()
Next
From: Bruce Momjian
Date:
Subject: Re: lastval()