const char *
mysql_sqlstate(MYSQL *mysql)
          Returns a null-terminated string containing the SQLSTATE error
          code for the most recently executed SQL statement. 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
          Error Messages and Common Problems.
        
          SQLSTATE values returned by
          mysql_sqlstate() differ from
          MySQL-specific error numbers returned by
          mysql_errno(). 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
          Not all MySQL error numbers are mapped to SQLSTATE error
          codes. The value 'HY000' (general error) is
          used for unmapped error numbers.
        
          If you call mysql_sqlstate()
          after mysql_real_connect()
          fails, mysql_sqlstate() might
          not return a useful value. For example, this happens if a host
          is blocked by the server and the connection is closed without
          any SQLSTATE value being sent to the client.