PDO::errorCode
(PHP 5 >= 5.1.0, PHP 7, PHP 8, PECL pdo >= 0.1.0)
PDO::errorCode —
Obtiene un SQLSTATE asociado con la última operación en el manejador de la base de datos
Descripción
public PDO::errorCode():
mixed
Valores devueltos
Devuelve un SQLSTATE, un identificador de cinco caracteres definidos en el
estándar ANSI SQL-92. Brevemente, un SQLSTATE está formado por dos caracteres
con el valor de la clase seguidos por tres caracteres con el valor de la subclase.
Un valor de clase de 01 indica un aviso y se encuentra acompañado por un código
de retorno de SQL_SUCCESS_WITH_INFO. Valores de clase distintos del '01', excepto
la clase 'IM', indican un error. La clase 'IM' es específica para avisos
y errores que derivan de la implementación del PDO (o quizás ODBC,
si se está usando el driver ODBC) por sí mismo. El valor de subclase '000' en
cualquier clase indica que no hay subclases para ese SQLSTATE.
PDO::errorCode() sólo devuelve códigos de error en operaciones
realizadas directamente sobre el manejador de la base de datos. Si se crea un objeto
PDOStatement con PDO::prepare() o
PDO::query() y éstas provocan un error en el manejador
de la sentencia, PDO::errorCode() no reflejará ese error.
Se debe llamar a PDOStatement::errorCode() para devolver el código
de error para una operación realizada por un manejador de sentencia particular.
Devuelve null
si no se ha ejecutado ninguna operación en el manejador de la base de datos.
Ejemplos
Ejemplo #1 Recuperación de un código SQLSTATE
<?php
/* Provoca un error -- la tabla BONES no existe */
$dbh->exec("INSERT INTO bones(skull) VALUES ('lucy')");
echo "\nPDO::errorCode(): ", $dbh->errorCode();
?>
El resultado del ejemplo sería:
Ver también
- PDO::errorInfo() - Obtiene información extendida del error asociado con la última operación del manejador de la base de datos
- PDOStatement::errorCode() - Obtiene el SQLSTATE asociado con la última operación del gestor de sentencia
- PDOStatement::errorInfo() - Obtiene información ampliada del error asociado con la última operación del gestor de sentencia