Страницы

Поиск по вопросам

пятница, 5 октября 2018 г.

Какой id вернёт lastInsertId() из PDO?

Использую PHP и MySQL. Насколько я понял, lastInsertId() возвращает id последнего добавленного элемента.
Но я не понимаю, это будет id последнего, добавленного мною элемента, или это id вообще последнего добавленного элемента (возможно другим пользователем)? И как указать этому методу нужную таблицу.
То есть, если я сделаю INSERT в таблицу, а потом вызову lastInsertId(), то гарантируется, что получу id именно этого INSERT? Или если другой пользователь успеет сделать свой INSERT в промежутке, то я могу получить его id вместо своего?


Ответ

Вернуть id последнего добавленного тобою элемента - единственное предназначение этой функции. Если бы она этого не делала, то попросту не имела бы смысла.
Для mysql эта функция возвращает результат функции LAST_INSERT_ID(), про которую сказано, что значение возвращается для текущего соединения. Поэтому бояться этой функции не надо.
Никакую "таблицу" при работе с mysql указывать не надо.

Комментариев нет:

Отправить комментарий