Copyright 1997-2022 the PHP Documentation Group.
mysqli::$sqlstate
mysqli_sqlstate
Returns the SQLSTATE error from previous MySQL operation
Description
Object-oriented style
string mysqli->sqlstate ;
Procedural style
string mysqli_sqlstate(mysqli mysql);
Returns a string containing the SQLSTATE error code for the last
error. The error code consists of five characters.
'00000'
means no error. The values
are specified by ANSI SQL and ODBC. For a list of possible
values, see
http://dev.mysql.com/doc/mysql/en/error-handling.html.
Note that not all MySQL errors are yet mapped to
SQLSTATE's. The value HY000
(general
error) is used for unmapped errors.
Parameters
-
mysql
Procedural style only: A
mysqli
object returned bymysqli_connect
ormysqli_init
Return Values
Returns a string containing the SQLSTATE error code for the last
error. The error code consists of five characters.
'00000'
means no error.
Examples
Example 7.72 $mysqli->sqlstate
example
Object-oriented style
<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
/* Table City already exists, so we should get an error */
if (!$mysqli->query("CREATE TABLE City (ID INT, Name VARCHAR(30))")) {
printf("Error - SQLSTATE %s.\n", $mysqli->sqlstate);
}
$mysqli->close();
?>
Procedural style
<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
/* Table City already exists, so we should get an error */
if (!mysqli_query($link, "CREATE TABLE City (ID INT, Name VARCHAR(30))")) {
printf("Error - SQLSTATE %s.\n", mysqli_sqlstate($link));
}
mysqli_close($link);
?>
The above examples will output:
Error - SQLSTATE 42S01.
See Also
mysqli_errno
|
mysqli_error
|