Thread: Support for RETURNING xxx INTO yyy for INSERT and UPDATE?

Support for RETURNING xxx INTO yyy for INSERT and UPDATE?

From
John Napiorkowski
Date:
Does anyone know if Postgres supports some form of:

insert into mytable(column1,column2)
 values ('a','b')
 returning mytable_pk into :new_mytable_pk

Where 'mytable_pk' is defaulted to type of SERIAL?

I am really used to having this on Oracle, but can't
seem to find anything about it in the documentation or
searching around the mailing lists.

If not, what methods can I use to reliable and
efficiently return new primary keys from inserts?  I
am thinking I could use a function, but then I would
need to create one for each table in the database,
which seems really messy to me.

Sorry if this question has been answered somewhere
else. I figure it must have been, since this seems
like such a basic thing to me, but I just can't find
it :)

--john



__________________________________
Do you Yahoo!?
Yahoo! Sports - Sign up for Fantasy Baseball.
http://baseball.fantasysports.yahoo.com/

Re: Support for RETURNING xxx INTO yyy for INSERT and UPDATE?

From
Michael Fuhr
Date:
On Tue, Feb 22, 2005 at 10:11:24PM -0800, John Napiorkowski wrote:

> what methods can I use to reliable and efficiently return new
> primary keys from inserts?

See "How do I get the value of a SERIAL insert?" in the FAQ:

http://www.postgresql.org/files/documentation/faqs/FAQ.html#4.11.2

--
Michael Fuhr
http://www.fuhr.org/~mfuhr/