Потеря данных при записи в таблицу

bukka
Дата: 04.02.2013 13:19:06
Добрый день! При добавлении данных в таблицу функция записи возвращает успешный результат, но тем не менее данные в таблицу не сохраняются (проверку делаю чаще всего с помощью mysqli_affected_rows). Где-то на 200 записей 2-3 не попадают в таблицу. Нужен совет, как быть в такой ситуации. Всем заранее большое спасибо!
Akina
Дата: 04.02.2013 14:09:41
bukka
как быть в такой ситуации
Получать и сохранять на клиенте как отправленные запросы, так и сообщения сервера (ощибки, предупреждения). Тогда будет предмет для обсуждения.
bukka
Дата: 04.02.2013 14:27:56
Да. Можно и так, но мне будет слегка проблематично с ними потом ознакомиться. Непонятно, почему все-таки mysqli_affected_rows возвращает 1, хотя ни данные не добавились. Перед записью я их проверяю, экранирую...Хм. Может при работе с проблемной таблицей использовать подготовленные выражения?
Akina
Дата: 04.02.2013 16:19:17
bukka
Непонятно, почему все-таки mysqli_affected_rows возвращает 1, хотя ни данные не добавились.
Например, потому что ошибка дублирования по какому-то индексу... affected_rows != rows added
bukka
Дата: 04.02.2013 17:17:14
Ясно, хотя вроде уникальные там только внешние ключи, id является AUTO_INCREMENT, на все остальные поля нету никаких правил уникальности, но мало-ли........
Спасибо большое! буду копать в этом направлении.
Arhat109
Дата: 04.02.2013 20:24:05
bukka,

покопайте ещё в сторону "клиент-сервер" технологий... Мускуль может с такой периодичностью (если большая нагрузка) отдавать "сервер занят, пошел нафиг", а ваша библиотека не проверяет, принял Мускуль запрос или куда его дел... там, где-то в доке читал, что рекомендуется повторить запрос в таких случаях или перевести вставку в LOW_PRIORITY , если можно ...
bukka
Дата: 05.02.2013 13:49:12
Да. У меня тоже были на этот счет подозрения, но про повтор запросов не знал.
И как раз в те дни, когда терялись данные, сервер тормозил.
Спасибо! Посмотрю по докам что можно будет сделать.