Mam zapytanie i chcę wstawić ostatni identyfikator. Identyfikator pola to klucz podstawowy i funkcja automatycznego zwiększania wartości.
Wiem, że muszę użyć tego stwierdzenia:
LAST_INSERT_ID()
Ta instrukcja działa z zapytaniem takim jak to:
$query = "INSERT INTO `cell-place` (ID) VALUES (LAST_INSERT_ID())";
Ale jeśli chcę uzyskać identyfikator za pomocą tego oświadczenia:
$ID = LAST_INSERT_ID();
Otrzymuję ten błąd:
Fatal error: Call to undefined function LAST_INSERT_ID()
Co ja robię źle?
Screaming snake case
. po drugie, jest to konwencja nazewnictwa MySQL, a nie PHPSELECT LAST_INSERT_ID()
to funkcja MySQLlastInsertId () działa tylko po zapytaniu INSERT.
Poprawny:
Błędny:
źródło
Możesz uzyskać identyfikator ostatniej transakcji, uruchamiając metodę lastInsertId () na obiekcie połączenia ($ conn).
W ten sposób $ lid = $ conn-> lastInsertId ();
Zapoznaj się z dokumentacją https://www.php.net/manual/en/language.oop5.basic.php
źródło