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

# mysql\_options

## Syntax

```c
int mysql_options(MYSQL * mysql,
                  enum mysql_option,
                  const void * arg);
```

## 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).
* `mysql_option` - the option you want to set. See description below.
* `arg` - the value for the option.

## Description

Used to set extra connect options and affect behavior for a connection. This function may be called multiple times to set several options. mysql\_options() should be called after [mysql\_init()](/docs/connectors/mariadb-connector-c/api-functions/mysql_init.md) and before [mysql\_real\_connect()](/docs/connectors/mariadb-connector-c/api-functions/mysql_real_connect.md).

## Return Value

Returns zero on success, non zero if an error occurred (invalid option or value).

{% hint style="warning" %}
This function is deprecated as of MariaDB Connector/C 3.0 and will be removed in future releases. It's preferable to use [mysql\_optionsv](/docs/connectors/mariadb-connector-c/api-functions/mysql_optionsv.md).
{% endhint %}

## Options

See [mysql\_optionsv](/docs/connectors/mariadb-connector-c/api-functions/mysql_optionsv.md).

## See Also

* [mysql\_init()](/docs/connectors/mariadb-connector-c/api-functions/mysql_init.md)
* [mysql\_optionsv](/docs/connectors/mariadb-connector-c/api-functions/mysql_optionsv.md)
* [mysql\_real\_connect()](/docs/connectors/mariadb-connector-c/api-functions/mysql_real_connect.md)

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