Руководство по PHP
Пред. |  | След.

# PDO::exec

(no version information, might be only in CVS)

PDO::exec -- Execute an SQL statement and return the number of affected rows

## Описание

int PDO::exec ( string statement )

PDO::exec() executes an SQL statement in a single function call, returning the number of rows affected by the statement.

PDO::exec() does not return results from a SELECT statement. For a SELECT statement that you only need to issue once during your program, consider issuing PDO::query(). For a statement that you need to issue multiple times, prepare a PDOStatement object with PDO::prepare() and issue the statement with PDOStatement::execute().

## Список параметров

statement

  The SQL statement to prepare and execute.

## Возвращаемые значения

PDO::exec() returns the number of rows that were modified or deleted by the SQL statement you issued. If no rows were affected, PDO::exec() returns 0.

Внимание
Эта функция может возвращать как логическое значение `FALSE`, так и не относящееся к логическому типу значение, которое приводится к `FALSE`, например, 0 или "". За более подробной информации обратитесь к разделу Булев тип. Используйте оператор === для проверки значения, возвращаемого этой функцией.

The following example incorrectly relies on the return value of PDO::exec(), wherein a statement that affected 0 rows results in a call to die():

`<?php $db->exec() or die($db->errorInfo()); ?>`

## Примеры

Пример 1. Issuing a DELETE statement

Count the number of rows deleted by a DELETE statement with no WHERE clause.

`<?php $dbh = new PDO('odbc:sample', 'db2inst1', 'ibmdb2'); /* Delete all rows from the FRUIT table */ $count = $dbh->exec("DELETE FROM fruit WHERE colour = 'red'"); /* Return number of rows that were deleted */ print("Deleted $count rows.\n"); ?>`

Результат выполнения данного примера:

    Deleted 1 rows.

## Смотрите также

PDO::prepare()
PDO::query()
PDOStatement::execute()

Пред. | Начало | След.
PDO::errorInfo | Уровень выше | PDO::getAttribute