1、MYSQL *mysql_init(MYSQL *mysql)
為mysql_real_connect()配置設定或初始化一個MYSQL對象。若mysql為NULL,函數為其配置設定,初始化并傳回一個新對象;否則對象被初始化并傳回該對象的位址。
傳回值:一個被初始化了的MYSQL* handle,若記憶體不足傳回NULL。
2、int mysql_options(MYSQL *mysql, enum mysql_option option, const void *arg)
為連接配接設定一些連接配接項。必須在mysql_init()之後,mysql_real_connect()之前調用該函數。
3、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)
試圖與運作在host上的mysql資料庫建立一個連接配接。在調用該函數之前,必須先調用mysql_init()初始化MYSQL結構體。
傳回值:連接配接成功傳回A MYSQL* connection handle,連接配接失敗傳回NULL。
4、int mysql_query(MYSQL *mysql, const char *stmt_str)
執行由stmt_str指向的SQL語句。不能執行包含二進制的資料(字元“\0”是二進制資料),但mysql_real_query()可以;通常使 用單獨的SQL語句(不帶“;”的),也可調用mysql_real_connect() 或mysql_set_server_option()指定以分号分隔的多個SQL語句
傳回值:SQL語句執行成功傳回0,出錯傳回非0。
5、int mysql_real_query(MYSQL *mysql, const char *stmt_str, unsigned long length)
length是字元串stmt_str的位元組數。除能執行二進制的SQL語句外,其他與mysql_query()相同。
6、MYSQL_RES *mysql_use_result(MYSQL *mysql)
在調用mysql_query()或mysql_real_query()之後,必須調用mysql_store_result()或 mysql_use_result()才能産生一個結果集,在完成對結果集的處理之後,必須調用mysql_free_result()釋放結果集
初始化一個結果集檢索,但并不像mysql_store_result()那樣把結果集讀到client,而是通過調用mysql_fetch_row()進行逐行檢索,直到傳回一個NULL,直接從server讀取,節省時間和空間
傳回值:成功傳回一個MYSQL_RES結構體,出錯傳回NULL
7、MYSQL_RES *mysql_store_result(MYSQL *mysql)
同mysql_use_result()
8、int mysql_next_result(MYSQL *mysql)
該函數用來在由多個SQL語句構成的單獨語句字元串時執行。在每次調用該函數之前,一定要使用 mysql_free_result()釋放目前的語句的結果集。
9、MYSQL_ROW mysql_fetch_row(MYSQL_RES *result)
檢索結果集中的下一行,使用完mysql_store_result()後,無要檢索的行傳回NULL。使用完mysql_use_result()後,無要檢索的行或出錯傳回NULL。
每行的值的個數可由mysql_num_fields(result)獲知,如果row儲存mysql_fetch_row()的傳回值,則指向值的指針是row[0] to row[mysql_num_fields(result)-1],空值由NULL指向
傳回值:成功傳回下一行的MYSQL_ROW structure,出錯或沒有要檢索的行傳回NULL
10、void mysql_close(MYSQL *mysql)
關閉先前打開的連接配接,同時也釋放由mysql指向的連接配接handle,若handle是由mysql_init() or mysql_connect()配置設定的。
本文轉自 ye小灰灰 51CTO部落格,原文連結:http://blog.51cto.com/10704527/1788432,如需轉載請自行聯系原作者