Ich habe seit einiger Zeit grundlegende MySQL gemacht, aber nichts darüber hinaus. Ich frage mich, ob es eine Möglichkeit gibt, die Reihe zu mir zurückzustecken, oder etwas, wenn ich eine neue Reihe in eine Tabelle einfüge. Grundsätzlich habe ich eine Tabelle mit einem Auto-Nummerierten Feld, und ich möchte in der Lage sein, diese Auto-Nummer so schnell und schmerzlos wie möglich zu bekommen. Wenn ich die Zeile nicht zu mir zurückgeben kann, sollte ich etwas anderes tun, als nur eine zweite Abfrage für das höchste Autonum auszuführen? Würde das nicht die (leichte, sehr, sehr geringfügige) Chance zulassen, dass die Tabelle von einem anderen Prozess oder Benutzer aktualisiert wurde und das nicht mehr die richtige Nummer ist? Momentan suche ich nur nach einer Zeile mit genau den Inhalten, die ich gerade eingegeben habe, und selbst das scheint mir Probleme zu bereiten.Gibt es eine Möglichkeit, MySQL dazu zu bringen, die von einem INSERT-Befehl erzeugte Zeile zurückzugeben?
Ich benutze PHP 5.1 und MySQL 5.0.45 wie es aussieht.
Danke für Ihre Hilfe.
Sie suchen LAST_INSERT_ID suchen() http://dev.mysql.com/doc/refman/5.1/en/information-functions.html#function_last-insert-id –
NB: Wenn Sie‘ Sprechen Sie darüber, dies in PHP zu bekommen, verwenden Sie PHPs mysql_insert_id -Funktion - ** versuchen Sie nicht, eine "LAST_INSERT_ID()" SQL-Abfrage aus PHP ** heraus zu stellen. –
@middaparka: Leute, denen Punkte wichtig sind, werden seine Frage nicht beantworten. Menschen, die eine gute Frage schätzen und sich für Wissen interessieren, kümmern sich nicht um Punkte. –