> For the complete documentation index, see [llms.txt](https://mariadb.com/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://mariadb.com/docs/connectors/mariadb-connector-c/api-functions/mysql_read_query_result.md).

# mysql\_read\_query\_result

## Syntax

```c
my_bool mysql_read_query_result(MYSQL * mysql);
```

## Parameter

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

## Description

`mysql_read_query_result()` reads the result of a SQL statement executed with [mysql\_send\_query()](/docs/connectors/mariadb-connector-c/api-functions/mysql_send_query.md). If the SQL statement returned a result set, it must be freed before the next call to `mysql_read_query_result()` is made. This is similar to how results from [mysql\_query()](/docs/connectors/mariadb-connector-c/api-functions/mysql_query.md) must be processed before another call can be made.

## Return Value

Returns zero on success, otherwise non-zero.

## Example

For an example how to use [`mysql_send_query()`](/docs/connectors/mariadb-connector-c/api-functions/mysql_send_query.md) in an event driven model, please check Jan Kneschke's Blog entry ["Async MySQL Queries with C-API"](https://jan.kneschke.de/projects/mysql/async-mysql-queries-with-c-api/).

## See Also

* [mysql\_real\_query()](/docs/connectors/mariadb-connector-c/api-functions/mysql_real_query.md)
* [mysql\_send\_query()](/docs/connectors/mariadb-connector-c/api-functions/mysql_send_query.md)

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