MySQL是一個開源的關系型數據庫管理系統,適用于各種規模的企業應用,也適用于小型網站。而C語言是一種通用的高級計算機程序設計語言。本文將介紹MySQL如何在C語言中使用。
#include//頭文件 int main() { MYSQL *conn;//MYSQL是連接類型 MYSQL_RES *res;//結果集類型 MYSQL_ROW row;//表格行類型 char *server = "localhost";//服務器地址 char *user = "root";//用戶名 char *password = "123456";//密碼 char *database = "test";//數據庫名稱 conn = mysql_init(NULL);//初始化 if (!mysql_real_connect(conn, server, user, password, database, 0, NULL, 0)) {//連接失敗 fprintf(stderr, "%s\n", mysql_error(conn)); exit(1); } if (mysql_query(conn, "show tables")) {//查詢出錯 fprintf(stderr, "%s\n", mysql_error(conn)); exit(1); } res = mysql_use_result(conn);//使用結果集 printf("Tables in test database:\n"); while ((row = mysql_fetch_row(res)) != NULL){//遍歷結果集并打印 printf("%s \n", row[0]); } mysql_free_result(res);//釋放結果集 mysql_close(conn);//關閉連接 return 0; }
代碼中需要注意的是,MySQL連接類型應該使用MYSQL類型,而結果集和表格行采用MYSQL_RES和MYSQL_ROW類型。另外,我們需要在連接MySQL之前先使用mysql_init()方法對MySQL進行初始化并賦值到conn上,如果返回NULL則說明初始化出錯。而連接MySQL時則需要使用mysql_real_connect()方法。
查詢MySQL數據庫內容可以使用mysql_query()方法,傳入SQL語句。如果出錯則可通過mysql_error()方法來查看錯誤原因。而使用mysql_use_result()方法得到結果集,每次使用mysql_fetch_row()方法從結果集中取出一行,并通過遍歷的方式輸出結果集。最后使用mysql_free_result()方法,釋放結果集,再通過mysql_close()方法來關閉連接。