PHP 8.4.2 Released!

mysqli_stmt::$sqlstate

mysqli_stmt_sqlstate

(PHP 5, PHP 7, PHP 8)

mysqli_stmt::$sqlstate -- mysqli_stmt_sqlstateDevuelve el error SQLSTATE de la operación de sentencia previa

Descripción

Estilo orientado a objetos

Estilo por procedimientos

mysqli_stmt_sqlstate(mysqli_stmt $stmt): string

Devuelve una cadena que contiene el código de error SQLSTATE de la función más recientemente invocada de sentencia preparada que tuvo éxito o falló. El código de error consiste en cinco caracteres. '00000' significa sin error. Los valores están especificados por ANSI SQL y ODBC. Para una lista de valores posibles, véase » http://dev.mysql.com/doc/mysql/en/error-handling.html.

Parámetros

stmt

Sólo estilo por procediminetos: Un identificador de declaraciones devuelto por mysqli_stmt_init().

Valores devueltos

Devuelve una cadena que contiene el código de error SQLSTATE del último error. El código de error consiste en cinco caracteres. '00000' significa sin error.

Notas

Nota:

Observe que aún no están referenciados todos los errores de MySQL a SQLSTATE. El valor HY000 (error general) se utiliza para errores no referenciados.

Ejemplos

Ejemplo #1 Estilo orientado a objetos

<?php
/* Abrir una conexión */
$mysqli = new mysqli("localhost", "mi_usuario", "mi_contraseña", "world");

/* comprobar la conexión */
if (mysqli_connect_errno()) {
printf("Falló la conexión: %s\n", mysqli_connect_error());
exit();
}

$mysqli->query("CREATE TABLE myCountry LIKE Country");
$mysqli->query("INSERT INTO myCountry SELECT * FROM Country");


$consulta = "SELECT Name, Code FROM myCountry ORDER BY Name";
if (
$sentencia = $mysqli->prepare($consulta)) {

/* eliminar la tabla */
$mysqli->query("DROP TABLE myCountry");

/* ejecutar la sentencia */
$sentencia->execute();

printf("Error: %s.\n", $sentencia->sqlstate);

/* cerrar la sentencia */
$sentencia->close();
}

/* cerrar la conexión */
$mysqli->close();
?>

Ejemplo #2 Estilo por procedimientos

<?php
/* Abrir una conexión */
$enlace = mysqli_connect("localhost", "mi_usuario", "mi_contraseña", "world");

/* comprobar la conexión */
if (mysqli_connect_errno()) {
printf("Falló la conexión: %s\n", mysqli_connect_error());
exit();
}

mysqli_query($enlace, "CREATE TABLE myCountry LIKE Country");
mysqli_query($enlace, "INSERT INTO myCountry SELECT * FROM Country");


$consulta = "SELECT Name, Code FROM myCountry ORDER BY Name";
if (
$sentencia = mysqli_prepare($enlace, $consulta)) {

/* eliminar la tabla */
mysqli_query($enlace, "DROP TABLE myCountry");

/* ejecutar la sentencia */
mysqli_stmt_execute($sentencia);

printf("Error: %s.\n", mysqli_stmt_sqlstate($sentencia));

/* cerrar la sentencia */
mysqli_stmt_close($sentencia);
}

/* cerrar la conexión */
mysqli_close($enlace);
?>

El resultado de los ejemplos sería:

Error: 42S02.

Ver también

  • mysqli_stmt_errno() - Devuelve el código de error de la llamada de la sentencia más reciente
  • mysqli_stmt_error() - Devuelve una descripción en forma de string del último error de una sentencia

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top