Re: get sequence value of insert command
От | Erik Thiele |
---|---|
Тема | Re: get sequence value of insert command |
Дата | |
Msg-id | 20041120102446.4a887124.erik@thiele-hydraulik.de обсуждение исходный текст |
Ответ на | Re: get sequence value of insert command ("Passynkov, Vadim" <Vadim.Passynkov@pathcom.com>) |
Список | pgsql-sql |
On Fri, 19 Nov 2004 10:57:12 -0500 "Passynkov, Vadim" <Vadim.Passynkov@pathcom.com> wrote: > > -----Original Message----- > > From: Erik Thiele [mailto:erik@thiele-hydraulik.de] > > Sent: Friday, November 19, 2004 3:42 AM > > To: pgsql-sql@postgresql.org > > Subject: [SQL] get sequence value of insert command > > > > create sequence mysequence; > > > > create table foo( > > id integer default nextval('mysequence'), > > bla text, > > wombat integer, > > foobar date, > > primary key(id) > > ); > > > > insert into foo (wombat) values (88); > > > > now how do i know the id of my newly inserted element? and > > how can this be done in a completely concurrency safe way? > > CREATE RULE get_pkey_on_insert AS ON INSERT TO foo DO SELECT > currval('mysequence') AS id LIMIT 1; now that one is really great! you should definitly add it to the faq. plus an additional explanation why the limit 1 is needed here. thanks! erik
В списке pgsql-sql по дате отправления: