mysqli_stmt_sqlstate

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.