Я нашел несколько ответов для этого, используя только mySQL, но я надеялся, что кто-то сможет показать мне способ получить идентификатор последней вставленной или обновленной строки базы данных mysql при использовании PHP для обработки вставок/обновлений.
В настоящее время у меня есть что-то вроде этого, где column3 является уникальным ключом, а также столбец идентификатора, который содержит автоматический первичный ключ:
$query ="INSERT INTO TABLE (column1, column2, column3) VALUES (value1, value2, value3) ON DUPLICATE KEY UPDATE SET column1=value1, column2=value2, column3=value3";
mysql_query($query);
$my_id = mysql_insert_id();
$my_id верен в INSERT, но неверен, когда он обновляет строку (ON DUPLICATE KEY UPDATE).
Я видел несколько сообщений с людьми, которые советуют вам использовать что-то вроде
INSERT INTO table (a) VALUES (0) ON DUPLICATE KEY UPDATE id=LAST_INSERT_ID(id)
чтобы получить действительное значение ID при вызове ключа ON DUPLICATE KEY - но вернет ли этот действительный идентификатор функции PHP mysql_insert_id()
?