PDOStatement::errorCode

(no version information, might be only in CVS)

PDOStatement::errorCode --  Fetch the error code associated with the last operation on the statement handle

Description

int PDOStatement::errorCode ( void )

Atenção

Esta função é EXPERIMENTAL. Isso quer dizer que o comportamento desta função e seu nome, incluindo TUDO o que está documentado aqui pode mudar em futuras versões do PHP, SEM QUALQUER NOTIFICAÇÃO. Esteja avisado, e use esta função por sua própria conta e risco.

Returns an integer value that maps to the error categories defined in the PDO constants.

Exemplo 1. Determining which category of error occurred

<?php
/* Provoke an error -- the BONES table does not exist */
$err = $dbh->prepare('SELECT skull FROM bones');
$err->execute();

echo
"\nPDOStatement::errorCode(): ";
switch (
$err->errorCode()) {
    case
PDO_ERR_NONE:
        echo
"No error!\n";
        break;
    case
PDO_ERR_CANT_MAP:
        echo
"Error: Unable to map data types between database and PHP.\n";
        break;
    case
PDO_ERR_SYNTAX:
        echo
"Error: incorrect syntax\n";
        break;
    case
PDO_ERR_CONSTRAINT:
        echo
"Error: The request would violate a constraint.\n";
        break;
    case
PDO_ERR_NOT_FOUND:
        echo
"Error: The object could not be found.\n";
        break;
    case
PDO_ERR_ALREADY_EXISTS:
        echo
"Error: The object already exists.\n";
        break;
    case
PDO_ERR_NOT_IMPLEMENTED:
        echo
"Error: The requested function is not implemented.\n";
        break;
    case
PDO_ERR_MISMATCH:
        echo
"Error: mismatch\n";
        break;
    case
PDO_ERR_TRUNCATED:
        echo
"Error: The value was truncated because the input value was longer
    than the maximum column length.\n"
;
        break;
    case
PDO_ERR_DISCONNECTED:
        echo
"Error: The connection to the requested database has been closed.\n";
        break;
}
?>

O exemplo acima irá imprimir:

PDOStatement::errorCode(): Error: The object could not be found.