Re: returning the primary key value - Mailing list pgsql-general

From vishal saberwal
Subject Re: returning the primary key value
Date
Msg-id 3e74dc2505092215408db5e97@mail.gmail.com
Whole thread Raw
In response to Re: returning the primary key value  (Michael Fuhr <mike@fuhr.org>)
List pgsql-general
hi,

If this primary key is a guid or a number that you create as unique, create it local to your function and then return the same after inserting within the function.

create or replace function test_insert() returns guid as $$
DECLARE
 ret guid;
BEGIN
   select into ret newid();
   -- ret is the primary key for the table "Table_a"
   insert into table_a (ret, "Value1","Value2");
  if not found then
     ..............
  end if;
  return ret;
END;
$$ language plpgsql;

your question is too abstract, i tink we will nee more information to solve your problem

vish

On 9/21/05, Michael Fuhr <mike@fuhr.org> wrote:
On Wed, Sep 21, 2005 at 02:22:22PM -0500, Jason Tesser wrote:
> I have a stored proc in which I want to retur the primary key of
> an insert statement that the stored proc just ran.  How can  I do
> that?

If the primary key is a SERIAL column then see "How do I get the
value of a SERIAL insert?" in the FAQ:

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

--
Michael Fuhr

---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend

pgsql-general by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: Lines of code in PG 8.0 & 8.1?
Next
From: CSN
Date:
Subject: Re: Finding (and deleting) dupes in relation table