Вставка mysql при обновлении дубликата ключа, проверьте, какой произошел

В PHP как определить, что произошло (INSERT или же UPDATE) в следующем запросе:

INSERT INTO ... ON DUPLICATE KEY UPDATE ...

1 ответ

Решение

Из руководства по PHP mysql_affered_rows:

В случае запросов "INSERT ... ON DUPLICATE KEY UPDATE" возвращаемое значение будет 1, если была выполнена вставка, или 2 для обновления существующей строки.

Так что используя функцию mysql_affected_rows() после выполнения запроса его можно обнаружить по возвращенному значению функции.

Другие вопросы по тегам