Ich bin einiger so etwas versuchen:MySQL: Verwenden Sie die ID der Zeile wird in der Insert-Anweisung selbst eingefügt
INSERT INTO dir_pictures SET filename=CONCAT(picture_id,'-test');
picture_id ist mein Primärschlüssel, Auto-Inkrement. Im Grunde versuche ich, die ID dieser insert-Anweisung in die Anweisung selbst zu schreiben.
Ich bin mir sicher, dass es mit etwas mehr PHP-Code oder mit mehr als nur Anweisungen getan werden kann, aber ich frage mich, ob es eine schnelle und einfache Möglichkeit gibt, es in einem Schuss zu tun.
PS. Die obige Aussage setzt immer '0-Test'
Dieses eine race Condition verursachen könnte ... watch out –
wie könnte es? last_insert_id() soll verbindungsspezifisch sein. Um das Handbuch zu zitieren: 'Die Verwendung der Spalten LAST_INSERT_ID() und AUTO_INCREMENT gleichzeitig von mehreren Clients ist absolut gültig. Jeder Client erhält die letzte eingefügte ID für die letzte Anweisung, die der Client ausgeführt hat. " – ChristopheD
fair genug. mein Fehler –