unsigned int mysql_errno(MYSQL *mysql)
Description
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 Appendix B, Errors, Error Codes, and Common Problems.
Note that some functions like
mysql_fetch_row()
don't 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:
shell> SELECT * FROM no_such_table;
ERROR 1146 (42S02): Table 'test.no_such_table' doesn't exist
Return Values
An error code value for the last
mysql_
call,
if it failed. zero means no error occurred.
xxx
()
Errors
None.
User Comments
Rather than requiring that we all download the source distribution, which not all of us want to do, why not include the error codes/messages as part of the online docs?
uint STDCALL mysql_errno(MYSQL *mysql)
{
if (mysql==NULL) return 0;
else return mysql->net.last_errno;
}
I have use this function on an example in
22.2.3.69. mysql_warning_count()
Add your own comment.