# mysql\_sqlstate

## Syntax

```c
const char * mysql_sqlstate(MYSQL * mysql);
```

* `mysql` - a mysql handle, which was previously allocated by [mysql\_init()](https://mariadb.com/docs/connectors/mariadb-connector-c/api-functions/mysql_init) or [mysql\_real\_connect()](https://mariadb.com/docs/connectors/mariadb-connector-c/api-functions/mysql_real_connect).

## Description

Returns a string containing the [SQLSTATE](https://app.gitbook.com/s/SsmexDFPv2xG2OTyO5yV/server-usage/programmatic-compound-statements/programmatic-compound-statements-diagnostics/sqlstate) error code for the most recently invoked function that can succeed or fail. The error code consists of five characters. '00000' means no error. The values are specified by `ANSI SQL` and `ODBC`

{% hint style="info" %}
Please note that not all client library error codes are mapped to `SQLSTATE` errors. Errors which can't be mapped will be returned as value HY000.
{% endhint %}

## See also

* [mysql\_error()](https://mariadb.com/docs/connectors/mariadb-connector-c/api-functions/mysql_error)
* [mysql\_errno()](https://mariadb.com/docs/connectors/mariadb-connector-c/api-functions/mysql_errno)

{% @marketo/form formId="4316" %}
