資料庫聯接參數
基本介紹
- 中文名:資料庫聯接參數
- 外文名:mysql_real_connect
- 頭檔案:#include<mysql.h>
- 函式說明:運行MySQL資料庫引擎建立連線
頭檔案,函式原型,函式說明,注釋,返回值,錯誤,範例,
頭檔案
#include<mysql.h>
函式原型
MYSQL *mysql_real_connect(MYSQL *mysql, const char *host, const char *user, const char *passwd, const char *db, unsigned int port, const char *unix_socket, unsigned long client_flag)
函式說明
mysql_real_connect()嘗試與運行在主機上的MySQL資料庫引擎建立連線。在你能夠執行需要有效MySQL連線句柄結構的任何其他API函式之前,mysql_real_connect()必須成功完成。
參數的指定方式如下:
第1個參數應是已有MYSQL結構的地址。調用mysql_real_connect()之前,必須調用mysql_init()來初始化MYSQL結構。通過mysql_options()調用,可更改多種連線選項。
“host”的值必須是主機名或IP位址。如果“host”是NULL或字元串"localhost",連線將被視為與本地主機的連線。如果作業系統支持套接字(Unix)或命名管道(Windows),將使用它們而不是TCP/IP連線到伺服器。
“user”參數包含用戶的MySQL登錄ID。如果“user”是NULL或空字元串"",用戶將被視為當前用戶。在UNIX環境下,它是當前的登錄名。在Windows ODBC下,必須明確指定當前用戶名。
“passwd”參數包含用戶的密碼。如果“passwd”是NULL,僅會對該用戶的(擁有1個空密碼欄位的)用戶表中的條目進行匹配檢查。這樣,資料庫管理員就能按特定的方式設定MySQL許可權系統,根據用戶是否擁有指定的密碼,用戶將獲得不同的許可權。
注釋
調用mysql_real_connect()之前,不要嘗試加密密碼,密碼加密將由客戶端API自動處理。
“db”是資料庫名稱。如果db為NULL,連線會將默認的資料庫設為該值。
如果“port”不是0,其值將用作TCP/IP連線的連線埠號。注意,“host”參數決定了連線的類型。
client_flag的值通常為0,但是,也能將其設定為下述標誌的組合,以允許特定功能:
標誌名稱 | 標誌描述 |
CLIENT_COMPRESS | 使用壓縮協定。 |
CLIENT_FOUND_ROWS | 返回發現的行數(匹配的),而不是受影響的行數。 |
CLIENT_IGNORE_SPACE | 允許在函式名後使用空格。使所有的函式名成為保留字。 |
CLIENT_INTERACTIVE | 關閉連線之前,允許interactive_timeout秒的不活動時間。 |
CLIENT_LOCAL_FILES | 允許LOAD DATA LOCAL處理功能。 |
CLIENT_MULTI_STATEMENTS | 通知伺服器,客戶端可能在單個字元串內傳送多條語句。 |
CLIENT_MULTI_RESULTS | 通知伺服器,客戶端能夠處理來自多語句執行。 |
CLIENT_NO_SCHEMA | 禁止db_name.tbl_name.col_name語法。 |
CLIENT_ODBC | 客戶端是ODBC客戶端。它將mysqld變得更為ODBC友好。 |
CLIENT_SSL | 使用SSL,該選項不應由應用程式設定,而是在客戶端庫內部設定。 |