Сколько же записей обновилось?

Вроде бы простой вопрос, сколько рядов было затронуто SQL-операцией UPDATE, но и здесь притаился подводный камень (о котором, правда честно предупреждают в документации). В MySQL в это число могут не попадать записи, у которых данные не потребовалось изменять. А значит, если REPLACE не подходит, то нужно проводить дополнительные проверки на тему того, сколько же данных вы обновили. Я споткнулся об этом в функции mysql_affected_rows в PHP. Там-же можно найти один из вариантов решения – использовать mysql_info, но в этом случае нужно парсить строку с ответом. Ну а дальше в вариантах SELECT‘ы и т.п.

2 thoughts on “Сколько же записей обновилось?”

  1. Тяжкое наследие любителей создать таблицу с несколькими раздельными ключами, из-за которого случается полная путаница в REPLACE, и поэтому приходиться делать всё жутко аккуратно в ретро-стилe UPDATE/INSERT.

Leave a Reply