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()