MySQL 5.7 C API Developer Guide
unsigned int mysql_errno(MYSQL *mysql)
For the connection specified by mysql,
mysql_errno() returns the
error code for the most recently invoked API function that can
succeed or fail. A return value of zero means that no error
occurred. Client error message numbers are listed in the MySQL
errmsg.h header file. Server error
message numbers are listed in
mysqld_error.h. Errors also are listed at
Error Messages and Common Problems.
Some functions such as
mysql_fetch_row() do not set
mysql_errno() if they
succeed. A rule of thumb is that all functions that have to
ask the server for information reset
mysql_errno() if they
succeed.
MySQL-specific error numbers returned by
mysql_errno() differ from
SQLSTATE values returned by
mysql_sqlstate(). For example,
the mysql client program displays errors
using the following format, where 1146 is
the mysql_errno() value and
'42S02' is the corresponding
mysql_sqlstate() value:
$> SELECT * FROM no_such_table;
ERROR 1146 (42S02): Table 'test.no_such_table' doesn't exist
An error code value for the last
mysql_
call, if it failed. zero means no error occurred.
xxx()