> 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_query.md).

# mysql\_query

## Syntax

```c
int mysql_query(MYSQL * mysql,
                const char * query);
```

## Parameters

* `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).
* `query` -a null terminated string containing the statement to be performed.

## Description

Performs a statement pointed to by the null terminate string query against the database. Contrary to [mysql\_real\_query()](/docs/connectors/mariadb-connector-c/api-functions/mysql_real_query.md), mysql\_query() is not binary safe.

## Return Value

Returns zero on success, non zero on failure

{% hint style="info" %}
For executing multi statements the statements within the null terminated string statements must be separated by a semicolon.

If your statement contains binary data you should use [mysql\_real\_query()](/docs/connectors/mariadb-connector-c/api-functions/mysql_real_query.md) or escape your data with [mysql\_hex\_string()](/docs/connectors/mariadb-connector-c/api-functions/mysql_hex_string.md).

To determine if a statement returned a result set use the function [mysql\_num\_fields()](/docs/connectors/mariadb-connector-c/api-functions/mysql_num_fields.md).
{% endhint %}

## See Also

* [mysql\_real\_query()](/docs/connectors/mariadb-connector-c/api-functions/mysql_real_query.md)
* [mysql\_num\_fields()](/docs/connectors/mariadb-connector-c/api-functions/mysql_num_fields.md)
* [mysql\_hex\_string()](/docs/connectors/mariadb-connector-c/api-functions/mysql_hex_string.md)
* [mysql\_use\_result()](/docs/connectors/mariadb-connector-c/api-functions/mysql_use_result.md)
* [mysql\_store\_result()](/docs/connectors/mariadb-connector-c/api-functions/mysql_store_result.md)

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