zu finden Ich frage mich, was die beste Lösung ist, um die letzte eingefügte ID nach einer MySQL-Anfrage zu bekommen?Der beste Weg, um die letzte eingefügte ID in mysql mit PHP
ich gefunden habe, die folgenden Lösungen:
<?php
function get_current_insert_id($table)
{
$q = "SELECT LAST_INSERT_ID() FROM $table";
return mysql_num_rows(mysql_query($q)) + 1;
}
?>
oder sogar mit mysql_insert_id
PHP-Funktion, aber anscheinend wird diese Funktion nicht gut arbeitet mit bigint (das ist, was ich für ID-Feld bin mit), und wenn es eine Menge von aufeinanderfolgenden sql Anfragen könnte es unzuverlässig sein.
Kann jemand eine zuverlässige und schnelle Lösung zur Verfügung stellen, um diese Aufgabe zu erfüllen?
Das ist eine ungültige Verwendung von LAST_INSERT_ID() dort. Sie würden es wie eine normale Spalte abrufen. mysql_num_rows() wird immer eins für diese Abfrage sein. – Corbin
Ich fand diese Funktion auf php.net und das Poster behauptet, dass diese Funktion alle Probleme löst, die durch mysql_insert_id verursacht werden! –
-1 für die Frage zu stellen, anstatt das Handbuch zu lesen –