Spec-Zone.ru › MySQL Connectors 1.0

5.4.74 mysql_sqlstate()

const char *
mysql_sqlstate(MYSQL *mysql)

Описание

Возвращает строку с завершающим нулём, содержащую код ошибки SQLSTATE для последнего выполненного SQL-запроса. Код ошибки состоит из пяти символов. '00000' означает “нет ошибки.” Значения определяются стандартами ANSI SQL и ODBC. Список возможных значений см. в .

Значения SQLSTATE, возвращаемые функцией mysql_sqlstate(), отличаются от специфичных для MySQL номеров ошибок, возвращаемых функцией mysql_errno(). Например, программа-клиент mysql отображает ошибки в следующем формате, где 1146 — значение mysql_errno(), а '42S02' — соответствующее значение mysql_sqlstate():

$> SELECT * FROM no_such_table;
ERROR 1146 (42S02): Table 'test.no_such_table' doesn't exist

Не все номера ошибок MySQL сопоставлены с кодами ошибок SQLSTATE. Значение 'HY000' (ошибка общего типа) используется для несопоставленных номеров ошибок.

Если вы вызываете функцию mysql_sqlstate() после того, как функция mysql_real_connect() завершилась неудачно, mysql_sqlstate() может не вернуть полезное значение. Например, это происходит, если хост заблокирован сервером, а соединение закрыто без отправки клиенту значения SQLSTATE.

Значения возврата

Строка символов с завершающим нулём, содержащая код ошибки SQLSTATE.

См. также

См. Раздел 5.4.14, «mysql_errno()», Раздел 5.4.15, «mysql_error()» и Раздел 6.4.27, «mysql_stmt_sqlstate()».

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/c-api-5.7-en/mysql-sqlstate.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API