const char *mysql_sqlstate(MYSQL *mysql)
説明
最近実行したSQLステートメントに対するSQLSTATEエラーを含む、ゼロで終わるストリングを戻します。エラーコードは5つの文字から成り立っています。'00000'
は「no
error」を意味します。値はANSI
SQLとODBCによって規定されています。可能な値のリストについては、Error Codes and Messagesをご参照ください。
mysql_sqlstate()
が戻したMySQLに固有なエラーナンバーは、mysql_errno()
が戻したSQLSTATE値とは異なっています。例えば、mysqlクライアントプログラムは以下のフォーマットを使ってエラーを表示します。この場合、1146
はmysql_errno()
値で、'42S02'
は対応するmysql_sqlstate()
値です:
shell> SELECT * FROM no_such_table;
ERROR 1146 (42S02): Table 'test.no_such_table' doesn't exist
すべてのMySQLエラーナンバーがSQLSTATEエラーコードにマップされるわけではありません。値'HY000'
(一般エラー)がマップされていないエラーナンバー用に使われます。
戻り値
SQLSTATEエラーコードを含むゼロで終わる文字ストリング。
もご参照ください。
項23.2.3.14. 「mysql_errno()
」,
項23.2.3.15. 「mysql_error()
」および項23.2.7.26. 「mysql_stmt_sqlstate()
」をご参照ください。