MySQL and PHP
Copyright 1997-2021 the PHP Documentation Group.
mysqli::$sqlstate
mysqli_sqlstate
Returns the SQLSTATE error from previous MySQL operation
Object oriented style
string mysqli->sqlstate ;
Procedural style
string mysqli_sqlstate(mysqli link);
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.
link
Procedural style only: A link identifier returned by
mysqli_connect
or
mysqli_init
Returns a string containing the SQLSTATE error code for the last
error. The error code consists of five characters.
'00000'
means no error.
Example 3.65 $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.
mysqli_errno
|
mysqli_error
|