PDO::exec — Выполняет оператор SQL и возвращает количество затронутых строк (PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)
int PDO::exec (строка $statement)
PDO::exec() выполняет оператор SQL за один вызов функции, возвращая количество строк, затронутых этим оператором.
PDO::exec() не возвращает результаты инструкции SELECT. Для операторов SELECT, которые необходимо выполнить в программе только один раз, рассмотрите возможность использования PDO::query().
оператор : оператор SQL, который необходимо подготовить и выполнить.
PDO::exec() Возвращает количество строк, на которые влияет оператор изменения или удаления SQL. Если затронутых строк нет, PDO::exec() возвращает 0.
Следующий пример неправильно использует возвращаемое значение PDO::exec(), где оператор с 0 затронутыми строками приведет к вызову die():
<?php$db->exec() или die(print_r($db->errorInfo(), true));?>
Подсчитывает количество строк, удаленных инструкцией DELETE без предложения WHERE.
<?php$dbh = new PDO('odbc:sample', 'db2inst1', 'ibmdb2');/* Удалить все строки, соответствующие условиям в таблице данных FRUIT */$count = $dbh->exec(" DELETE FROM Fruit WHERE color = 'red'");/* Возвращает количество удаленных строк*/print("Deleted $count rows.n");?>
Приведенная выше процедура выведет:
Удалена 1 строка.