PDO
PHP Manual

PDO::errorInfo

(PHP 5 >= 5.1.0, PHP 7, PECL pdo >= 0.1.0)

PDO::errorInfo Получает расширенную информацию об ошибке, произошедшей в ходе последнего обращения к базе данных

Описание

public array PDO::errorInfo ( void )

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

PDO::errorInfo() возвращает массив с информацией об ошибке произошедшей в ходе выполнения последней операции с базой данных. Массив содержит следующие поля:

Элемент Информация
0 Код ошибки SQLSTATE (пятисимвольный идентификатор определенный в стандарте ANSI SQL).
1 Код ошибки, заданный драйвером.
2 Выданное драйвером сообщение об ошибке.

Замечание:

Если не задан SQLSTATE код или драйвер не сообщил об ошибке, то элементы следующие за нулевым будут иметь значение NULL.

PDO::errorInfo() выдает информацию об ошибке только для операций совершаемых с базой данных напрямую из PDO. Если создать объект PDOStatement методами PDO::prepare() или PDO::query(), и вызвать ошибку его методами, PDO::errorInfo() эту ошибку не отобразит. В таких случаях нужно пользоваться собственными методами получения информации об ошибках объекта PDOStatement PDOStatement::errorInfo().

Примеры

Пример #1 Вывод полей массива errorInfo() для PDO_ODBC подключения к базе данных DB2

<?php
/* Спровоцируем синтаксическую ошибку SQL */
$stmt $dbh->prepare('bogus sql');
if (!
$stmt) {
    echo 
"\nPDO::errorInfo():\n";
    
print_r($dbh->errorInfo());
}
?>

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

PDO::errorInfo():
Array
(
    [0] => HY000
    [1] => 1
    [2] => near "bogus": syntax error
)

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


PDO
PHP Manual