文档主页
MySQL 9.0 C API 开发者指南
下载本手册
PDF (US Ltr) - 1.4Mb
PDF (A4) - 1.4Mb


5.4.32 mysql_get_option()

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

描述

返回使用 mysql_options() 设置的选项的当前值。该值应被视为只读。

option 参数是您想要获取其值的选项。arg 参数是一个指针,指向用于存储选项值的变量。arg 必须是指向与 option 参数类型相匹配的变量的指针。下表显示了每个 option 值应使用的变量类型。

对于 MYSQL_OPT_MAX_ALLOWED_PACKET,可以设置会话或全局最大缓冲区大小,具体取决于 mysql_options()mysql 参数是否为非 NULLNULLmysql_get_option() 同样根据其 mysql 参数返回会话值或全局值。

arg 类型 适用的 option
unsigned int MYSQL_OPT_CONNECT_TIMEOUTMYSQL_OPT_PROTOCOLMYSQL_OPT_READ_TIMEOUTMYSQL_OPT_RETRY_COUNTMYSQL_OPT_SSL_FIPS_MODEMYSQL_OPT_SSL_MODEMYSQL_OPT_WRITE_TIMEOUTMYSQL_OPT_ZSTD_COMPRESSION_LEVEL
unsigned long MYSQL_OPT_MAX_ALLOWED_PACKETMYSQL_OPT_NET_BUFFER_LENGTH
bool MYSQL_ENABLE_CLEARTEXT_PLUGINMYSQL_OPT_CAN_HANDLE_EXPIRED_PASSWORDSMYSQL_OPT_GET_SERVER_PUBLIC_KEYMYSQL_OPT_LOCAL_INFILEMYSQL_OPT_OPTIONAL_RESULTSET_METADATAMYSQL_OPT_RECONNECT(已弃用)、MYSQL_REPORT_DATA_TRUNCATION
const char * MYSQL_DEFAULT_AUTHMYSQL_OPT_BINDMYSQL_OPT_COMPRESSION_ALGORITHMSMYSQL_OPT_LOAD_DATA_LOCAL_DIRMYSQL_OPT_SSL_CAMYSQL_OPT_SSL_CAPATHMYSQL_OPT_SSL_CERTMYSQL_OPT_SSL_CIPHERMYSQL_OPT_SSL_CRLMYSQL_OPT_SSL_CRLPATHMYSQL_OPT_SSL_KEYMYSQL_OPT_TLS_CIPHERSUITESMYSQL_OPT_TLS_SNI_SERVERNAMEMYSQL_OPT_TLS_VERSIONMYSQL_PLUGIN_DIRMYSQL_READ_DEFAULT_FILEMYSQL_READ_DEFAULT_GROUPMYSQL_SERVER_PUBLIC_KEYMYSQL_SET_CHARSET_DIRMYSQL_SET_CHARSET_NAMEMYSQL_SHARED_MEMORY_BASE_NAME
void MYSQL_OPT_SSL_SESSION_DATA
参数未使用 MYSQL_OPT_COMPRESS
无法查询(返回错误) MYSQL_INIT_COMMANDMYSQL_OPT_CONNECT_ATTR_DELETEMYSQL_OPT_CONNECT_ATTR_RESETMYSQL_OPT_NAMED_PIPE

返回值

成功返回零。如果发生错误,则返回非零值;这发生在无法查询的 option 值。

示例

以下调用测试 MYSQL_OPT_LOCAL_INFILE 选项。调用成功返回后,infile 的值为 true 或 false,表示 local_infile 是否启用。

bool infile;

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