Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   [PHP] ID von AUTO_INCREMENT-Feld der letzen INSERT-Operation (https://www.delphipraxis.net/75466-%5Bphp%5D-id-von-auto_increment-feld-der-letzen-insert-operation.html)

faux 19. Aug 2006 18:44

Datenbank: MySQL • Version: 4.1 • Zugriff über: php_mysql.dll

[PHP] ID von AUTO_INCREMENT-Feld der letzen INSERT-Operation
 
Hallo!

Ich programmiere jetzt zwar schon seit ein paar Jahren PHP und arbeite ebensolange mit MySQL, aber ich habe trotzdemmal eine ganz banale Frage:
Wie kann ich die ID eines AUTO_INCREMENT-Feldes vom eben hinzugefügten Datensatz herausfinden?
Da gibt es doch mysql_insert_id, welche die ID der letzen INSERT-Operation liefert, aber rein theoretisch kann das entsprechende Skript ja so knapp hintereinander ausgeführt werden, dass hier bereits die ID des nächsten Datensatzes zurückgegeben wird, oder?!

Grüße
Faux

mkinzler 19. Aug 2006 18:48

Re: [PHP] ID von AUTO_INCREMENT-Feld der letzen INSERT-Opera
 
M.W. ist das die letzte ID der aktuellen datenbanksitzung als von deiner Sitzung, was sicherstellt die richtige ID zu bekommen.

faux 19. Aug 2006 18:59

Re: [PHP] ID von AUTO_INCREMENT-Feld der letzen INSERT-Opera
 
Okay, alles klar. Dann gibts ja keine "Verwechslungsmöglichkeiten". ;)

Danke.
Grüße
Faux

himitsu 3. Nov 2009 11:27

Re: [PHP] ID von AUTO_INCREMENT-Feld der letzen INSERT-Opera
 
Hab hierzu auch noch 'nen Problem.

Wenn man die Beschreibungen wortwörtlich nimmt, dann liefert mysql_insert_id die zuletzt erstellte ID,
ABER hier liegt die Nadel im Heuhaufen.

Ich führe ein Insert or Update aus, wo bei vorhandenem Datensatz die ID ja schon existiert und nicht mehr erstellt wird.
Aber ich brauch ja dennoch die ID, welcher der Datensatz nun hat.

Liefert mysql_insert_id denn nun auch diese ID?

DeddyH 3. Nov 2009 12:12

Re: [PHP] ID von AUTO_INCREMENT-Feld der letzen INSERT-Opera
 
Das ist versionsabhängig. Details siehe http://dev.mysql.com/doc/refman/5.1/...last-insert-id

[edit] Ich gehe dabei davon aus, dass die PHP-Funktion nur ein Wrapper für die MySQL-Funktion ist. Ansonsten kannst Du ja auf jeden Fall die MySQL-Funktion verwenden, um auf Nummer Sicher zu gehen. [/edit]

himitsu 3. Nov 2009 12:55

Re: [PHP] ID von AUTO_INCREMENT-Feld der letzen INSERT-Opera
 
OK, dann führe ich wohl einfach doch noch ein Select aus :|


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:57 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz