В MySQL 5.7 есть таблица:
CREATE TABLE user(
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
name VARCHAR(30) NOT NULL,
PRIMARY KEY(id)
);
При записи в поле name, поле id будет заполняться СУБД.
Некоторое приложение имеет права на INSERT в поле name данной таблицы. Но этому приложению недостаточно просто сделать запись в таблицу, ему ещё нужно получить обратно значение поля id для только что сделанной записи. Как это реализовать?
Записи в таблицу могут делаться разными приложениями в параллельном режиме. Поэтому просто возвращать максимальное значение из поля id не получится.
У меня есть колхозная идея, как реализовать это, но я пока что умолчу о ней.