Mysql auto increment id weiterverwenden
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
all
check
code
eintrag
fehler
funktion
http
manual
not
null
option
sagen
server
spalte
syntax
tabelle
test
text
url
zeile
-
c143 schrieb:
genau meinte ich (nach de.php.net)
...
2. Meinst du ...Anmerkungen
und natürlich auch hier.
Achtung
mysql_insert_id() konvertiert den Typ der Rückgabe der nativen MySQL C API Funktion mysql_insert_id() in den Typ long (als int in PHP bezeichnet). Falls Ihre AUTO_INCREMENT Spalte vom Typ BIGINT (64 Bit) ist, ist der Wert den mysql_insert_id() liefert, nicht korrekt. Verwenden Sie in diesem Fall stattdessen die MySQL interne SQL Funktion LAST_INSERT_ID() in einer SQL-Abfrage. Für weitergehende Informationen bezüglich PHPs maximaler Integer Werte, lesen sie bitte integer Dokumenation.
Hinweis:
Da mysql_insert_id() mit der zuletzt ausgeführten Abfrage arbeite, stellen sie sicher, dass sie mysql_insert_id() direkt nach der Abfrage, die den Wert erzeugt aufrufen.
Hinweis:
Der Wert der MySQL SQL Funktion LAST_INSERT_ID() liefert immer den zuletzt erzeugten AUTO_INCREMENT Wert. Dieser wird zwischen Abfragen nicht zurückgesetzt.
aber du kannst/sollst unter beiden links alle beiträge mal durchlesen. auch die älteren, nicht alles hat sich bis heute weltweit verbreitet ;)
als resümee kann man (aus meiner sicht) sagen: LAST_INSERT_ID() von mysql ist der vorrang zu geben! aber noch immer sofort nach insert!
(demnach ist mein code eigentlich nicht auch gleich der spiegel meiner meinung. ich habe euren code nur editiert ;)
Beitrag zuletzt geändert: 8.1.2014 3:01:14 von czibere -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage