From: | friedrich nietzsche <nietzsche_psql(at)yahoo(dot)it> |
---|---|
To: | pgsql-sql <pgsql-sql(at)postgresql(dot)org> |
Subject: | Re: Retrieving the new nextval... |
Date: | 2002-08-28 16:32:45 |
Message-ID: | 20020828163245.98872.qmail@web12901.mail.yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
Hi all,
I'm in trouble with the same problem, but in PHP..
With your solution, I cannot be totally sure that last
inserted raw was mine...
Because I'm on a web page, it could be that, as soon
as I've inserted my record, another one do an
insertion, so I would get the wrong ID...
does transactions resolve this, in Psql???
I thought to solve it with a similiar solution,
working in transactions inserting a raw and
immedialtly after read from DB last raw, but who
assure me that all will go right??
If I was on a server app., I (and you, if it is your
case) would insert a timestamp, and then I'd select
from table where timestamp = mysavedtime;
But in my case there could be two or more equals
timestamp, cause there's not only one application
working with DB...
I'm still reading, searching, trying...
ciao
danilo
--- Kevin Brannen <kevinb(at)nurseamerica(dot)net> ha
scritto: > Greg Patnude wrote:
> > I am using postgreSQL with Perl::CGI and
> Perl::DBI::Pg... I would like to be
> > able to insert a row from my Perl script
> [$SQL->exec();] and have postgreSQL
> > return the id of the newly inserted record
> (new.id) directly to the Perl
> > script for further processing... Anyone with a
> solution / idea ???
> >
> > Nearly EVERY table I create in postgreSQL (7.2)
> has the following minimum
> > structure:
> >
> > create table "tblName" (
> >
> > id int4 primary key nextval
> ("tblName_id_seq"),
> >
> > ..field...
> > )
>
> You can either do it in 2 statements, something
> like:
>
> $dbh->do("insert into tblName ...");
> my ($id) = $dbh->selectrow_array("select
> currval('tblName_id_seq')");
>
> Or you could create a function which takes the
> insert statement, and
> ends with doing a select on the currval (as above)
> and returning that.
> As I do the 2 statement approach above, I haven't
> done a function, but
> it doesn't look like it would be that hard to do.
>
> HTH,
> Kevin
R
______________________________________________________________________
Yahoo! Musica: notizie, recensioni, classifiche, speciali multimediali
http://it.yahoo.com/mail_it/foot/?http://it.music.yahoo.com/
From | Date | Subject | |
---|---|---|---|
Next Message | friedrich nietzsche | 2002-08-28 16:36:10 | Re: [SQL] Retrieving the new "nextval" for primary keys.... |
Previous Message | tp | 2002-08-28 16:09:29 | UPDATE & LIMIT together? |