Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Базы Данных > PDO Update запросы


Автор: Axiom 1.4.2014, 12:08
Доброго дня!
Столкнулся с такой проблемой.
Составил следующий update запрос:
Код

$STH = $this->_dbHandle->prepare("UPDATE users SET email = :email WHERE id = :id");

$STH->bindParam(':id', $data['id']);
$STH->bindParam(':email', $data['email']);

return $STH->rowCount();


Запрос рабочий, обновляет на "ура", но заметил интересную особенность. Если данные, например, email не изменились, то функция rowCount() не возвращает кол-во затронутых строк. Т.е. если я правильно понимаю, драйвер делает следующее: проверяет, если новые данные соответствуют уже существующим, то обновление не происходит вовсе.
Отсюда вопрос. Как заставить update-запросы выполняться в любом случае? Чтобы не производить лишних проверок на предмет изменения данных.

Автор: krypt3r 1.4.2014, 14:12
Не уверен, что понял правильно, но PDO::MYSQL_ATTR_FOUND_ROWS

Автор: Axiom 1.4.2014, 14:19
Цитата(krypt3r @  1.4.2014,  14:12 Найти цитируемый пост)
PDO::MYSQL_ATTR_FOUND_ROWS 


То, что нужно.

Спасибо  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)