When an error occurs in MySQL, the server returns two types of error values:
A MySQL-specific error code. This value is numeric. It is not portable to other database systems.
An SQLSTATE value. The value is a five-character string (for
example, '42S02'
). The values are specified
by ANSI SQL and ODBC and are more standardized.
When an error occurs, you can access the MySQL error code, the SQLSTATE value, and a string containing an error message using C API functions:
MySQL error code: Call
mysql_errno()
SQLSTATE value: Call
mysql_sqlstate()
Error message: Call
mysql_error()
For prepared statements, the corresponding error functions are
mysql_stmt_errno()
,
mysql_stmt_sqlstate()
, and
mysql_stmt_error()
. All error
functions are described in Section 20.10, “MySQL C API”.
The first two characters of an SQLSTATE value indicate the error class:
'00'
indicates success.
'01'
indicates a warning.
'02'
indicates “not found.”
These values are relevant only within the context of cursors
and are used to control what happens when a cursor reaches the
end of a data set.
Other values indicate an exception.
User Comments
Add your own comment.