PHP 8.5.0 Alpha 1 available for testing

PDO::errorCode

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

PDO::errorCode Devuelve el SQLSTATE asociado con la última operación sobre la base de datos

Descripción

public PDO::errorCode(): ?string

Parámetros

Esta función no contiene ningún parámetro.

Valores devueltos

PDO::errorCode() devuelve un SQLSTATE, un identificador alfanumérico de cinco caracteres definido en el estándar ANSI SQL. Brevemente, un SQLSTATE consiste en un valor de clase de dos caracteres seguido por un valor de subclase de tres caracteres. Un valor de clase de 01 indica una alerta y es acompañado por un código de retorno SQL_SUCCESS_WITH_INFO. Los valores de clases distintos a '01', a excepción de la clase 'IM', indican un error. La clase 'IM' es específica para alertas y errores que provienen de la implementación misma de PDO (o quizás ODBC, si se utiliza el driver ODBC). El valor de subclase '000' en cualquier clase, indica que no hay subclase para este SQLSTATE.

PDO::errorCode() devuelve únicamente los códigos de error para operaciones ejecutadas directamente sobre el manejador de la base de datos. Si se crea un objeto PDOStatement con la función PDO::prepare() o la función PDO::query() y se invoca un error sobre el manejador de consulta, PDO::errorCode() no devolverá este error. Se debe llamar PDOStatement::errorCode() para devolver el código de error para una operación ejecutada sobre un manejador de consulta particular.

Devuelve null si ninguna operación ha sido ejecutada sobre la base de datos.

Ejemplos

Ejemplo #1 Obtenció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 ejemplo anterior mostrará :

PDO::errorCode(): 42S02

Ver también

  • PDO::errorInfo() - Devuelve las informaciones asociadas al error durante la última operación sobre la base de datos
  • PDOStatement::errorCode() - Recupera las informaciones sobre el error asociado durante la última operación sobre la consulta
  • PDOStatement::errorInfo() - Recupera las informaciones sobre el error asociado durante la última operación sobre la consulta

add a note

User Contributed Notes 1 note

up
44
Matthias Leuffen
19 years ago
Hi,

List containing all SQL-92 SQLSTATE Return Codes:
http://www.unix.org.ua/orelly/java-ent/jenut/ch08_06.htm

Use the following Code to let PDO throw Exceptions (PDOException) on Error.

<?PHP
$pdo
= new PDO (whatever);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
try {
$pdo->exec ("QUERY WITH SYNTAX ERROR");
} catch (
PDOException $e) {
if (
$e->getCode() == '2A000')
echo
"Syntax Error: ".$e->getMessage();
}
?>

Bye,
Matthias
To Top