From: | "A(dot) Kretschmer" <andreas(dot)kretschmer(at)schollglas(dot)com> |
---|---|
To: | pgsql-de-allgemein(at)postgresql(dot)org |
Subject: | Re: last_insert_id (php) |
Date: | 2006-07-24 19:06:31 |
Message-ID: | 20060724190631.GA8099@webserv.wug-glas.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-de-allgemein |
am 24.07.2006, um 17:31:34 +0200 mailte Marco Behnke folgendes:
> Ok, auf zu Frage drei :)
Okay ;-)
> In meinem alten System (mysql) habe ich nach dem Speichern von Objekten
> mit mysql_insert_id() die zuletzt vergebene ID des auto_increment
> ausgelesen und so die ID des Objektes ermittelt.
>
> Das Postgres ein anderes Konzept hat (Sequenzen) und ich keine Funktion
> gesehen habe, die soetwas macht, werde ich mir wohl mit einem Umweg
Nein. nextval() und currval() sind Deine Freunde.
20:59 < akretschmer> ??currval
20:59 < rtfm_please> For information about currval
20:59 < rtfm_please> see http://www.postgresql.org/docs/current/static/functions-sequence.html
Mach Deinen INSERT, und dann:
INSERT ... VALUES (..., currval(name_der sequence), ...);
Das ist innerhalb Deiner Session eindeutig, und auch für außerhalb
Deiner Session. Selbst ein ROLLBACK verändert _NICHT_ Deine Sequence.
Andreas
--
Andreas Kretschmer (Kontakt: siehe Header)
Heynitz: 035242/47215, D1: 0160/7141639
GnuPG-ID 0x3FFF606C http://wwwkeys.de.pgp.net
=== Schollglas Unternehmensgruppe ===
From | Date | Subject | |
---|---|---|---|
Next Message | Robert Max Kramer | 2006-07-26 09:32:03 | Kann man Bytea-Daten via Monitor psql auslesen? |
Previous Message | Stefan Kaltenbrunner | 2006-07-24 16:44:05 | Re: last_insert_id (php) |