mysqli_stmt_sqlstate

(PHP 5)

mysqli_stmt_sqlstate -- Regresa el error SQLSTATE de la operación con sentencias previa

Descripción

cadena mysqli_stmt_sqlstate ( mysqli_stmt stmt )

Regresa una cadena conteniendo el código de error SQLSTATE para la sentencia preparada más recientemente invocada que pudo ser exitosa o fallar. El código de error consiste de cinco caracteres. '00000' significa que no hubo error. Los valores son específicados por ANSI SQL y ODBC. Para una lista de los posibles valores vea http://dev.mysql.com/doc/mysql/en/error-handling.html.

Nota: Note que no todos los errores de MySQL tienen un correspondiente en SQLSTATE. El valor HY000 (error general) es usado para errores que no tienen ese correspondiente.

Valores retornados

Regresa una candena conteniendo el código de error SQLSTATE para el último error. El código de error consiste de cinco caracteres. '00000' significa que no hubo error.

Ver también

mysqli_stmt_errno(), y mysqli_stmt_error().

Ejemplos

Ejemplo 1. Estilo orientado a objetos

<?php
/* Open a connection */
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    
printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

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


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

    
/* drop table */
    
$mysqli->query("DROP TABLE myCountry");

    
/* execute query */
    
$stmt->execute();

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

    
/* close statement */
    
$stmt->close();
}

/* close connection */
$mysqli->close();
?>

Ejemplo 2. Estilo por procedimientos

<?php
/* Open a connection */
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    
printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

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


$query = "SELECT Name, Code FROM myCountry ORDER BY Name";
if (
$stmt = mysqli_prepare($link, $query)) {

    
/* drop table */
    
mysqli_query($link, "DROP TABLE myCountry");

    
/* execute query */
    
mysqli_stmt_execute($stmt);

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

    
/* close statement */
    
mysqli_stmt_close($stmt);
}

/* close connection */
mysqli_close($link);
?>

El resultado del ejemplo seria:

Error: 42S02.

Hosting by: hurra.com
Generated: 2007-01-26 18:00:47