Documentation Home
MySQL 8.0 C API Developer Guide
Download this Manual
PDF (US Ltr) - 1.3Mb
PDF (A4) - 1.3Mb


5.4.32 mysql_get_option()

int
mysql_get_option(MYSQL *mysql,
                 enum mysql_option option,
                 const void *arg)

Description

Returns the current value of an option settable using mysql_options(). The value should be treated as read only.

The option argument is the option for which you want its value. The arg argument is a pointer to a variable in which to store the option value. arg must be a pointer to a variable of the type appropriate for the option argument. The following table shows which variable type to use for each option value.

For MYSQL_OPT_MAX_ALLOWED_PACKET, it is possible to set a session or global maximum buffer size, depending on whether the mysql argument to mysql_options() is non-NULL or NULL, mysql_get_option() similarly returns the session or global value depending on its mysql argument.

arg Type Applicable option Values
unsigned int MYSQL_OPT_CONNECT_TIMEOUT, MYSQL_OPT_PROTOCOL, MYSQL_OPT_READ_TIMEOUT, MYSQL_OPT_RETRY_COUNT, MYSQL_OPT_SSL_FIPS_MODE, MYSQL_OPT_SSL_MODE, MYSQL_OPT_WRITE_TIMEOUT, MYSQL_OPT_ZSTD_COMPRESSION_LEVEL
unsigned long MYSQL_OPT_MAX_ALLOWED_PACKET, MYSQL_OPT_NET_BUFFER_LENGTH
bool MYSQL_ENABLE_CLEARTEXT_PLUGIN, MYSQL_OPT_CAN_HANDLE_EXPIRED_PASSWORDS, MYSQL_OPT_GET_SERVER_PUBLIC_KEY, MYSQL_OPT_LOCAL_INFILE, MYSQL_OPT_OPTIONAL_RESULTSET_METADATA, MYSQL_OPT_RECONNECT (deprecated as of MySQL 8.0.34), MYSQL_REPORT_DATA_TRUNCATION
const char * MYSQL_DEFAULT_AUTH, MYSQL_OPT_BIND, MYSQL_OPT_COMPRESSION_ALGORITHMS, MYSQL_OPT_LOAD_DATA_LOCAL_DIR, MYSQL_OPT_SSL_CA, MYSQL_OPT_SSL_CAPATH, MYSQL_OPT_SSL_CERT, MYSQL_OPT_SSL_CIPHER, MYSQL_OPT_SSL_CRL, MYSQL_OPT_SSL_CRLPATH, MYSQL_OPT_SSL_KEY, MYSQL_OPT_TLS_CIPHERSUITES, MYSQL_OPT_TLS_VERSION, MYSQL_PLUGIN_DIR, MYSQL_READ_DEFAULT_FILE, MYSQL_READ_DEFAULT_GROUP, MYSQL_SERVER_PUBLIC_KEY, MYSQL_SET_CHARSET_DIR, MYSQL_SET_CHARSET_NAME, MYSQL_SHARED_MEMORY_BASE_NAME
void MYSQL_OPT_SSL_SESSION_DATA
argument not used MYSQL_OPT_COMPRESS
cannot be queried (error is returned) MYSQL_INIT_COMMAND, MYSQL_OPT_CONNECT_ATTR_DELETE, MYSQL_OPT_CONNECT_ATTR_RESET, MYSQL_OPT_NAMED_PIPE

Return Values

Zero for success. Nonzero if an error occurred; this occurs for option values that cannot be queried.

Example

The following call tests the MYSQL_OPT_LOCAL_INFILE option. After the call returns successfully, the value of infile is true or false to indicate whether local_infile is enabled.

bool infile;

if (mysql_get_option(mysql, MYSQL_OPT_LOCAL_INFILE, &infile))
  fprintf(stderr, "mysql_get_option() failed\n");