文件首頁
MySQL 8.4 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 引數是否為非 NULLNULL。同樣地,mysql_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");