Я использую last_insert_id для получения значения автоинкремента из mysql. Я вставляю записи, используя синтаксис «вставка .. при обновлении дублированного ключа ..», и у меня есть два вопроса, связанных с этим -
a) Если запись обновляется из-за дублирования ключа вместо вставки новой записи, я получаю либо 0, либо, если предыдущая вставка прошла успешно, возвращается ее last_insert_id. Как провести различие между этими двумя?
б) Я использую tomcat и обнаружил странный случай, когда соединение, возвращаемое из пула, возвращает мне last_insert_id предыдущей транзакции. Например, если я нажму кнопку «Сохранить» и запомню last_insert_id как «110», и если я снова нажму кнопку «Сохранить» на веб-странице, то это будет отдельный веб-запрос и новое соединение, но я получу last_insert_id как 110.
Входные данные приветствуются!