MySQL是一個廣泛使用的開源關系型數據庫管理系統。為了使用MySQL進行數據的存儲和讀取,我們需要通過C語言與MySQL進行通信。下面是一個簡單的MySQL C鏈接數據庫的代碼實例:
#include <mysql.h> #include <stdio.h> int main(int argc, char *argv[]) { MYSQL mysql; MYSQL_RES *res; MYSQL_ROW row; char *server = "localhost"; char *user = "root"; char *password = "123456"; char *database = "test"; mysql_init(&mysql); if (!mysql_real_connect(&mysql, server, user, password, database, 0, NULL, 0)) { printf("mysql_real_connect error: %s\n", mysql_error(&mysql)); return -1; } if (mysql_query(&mysql, "SELECT * FROM user")) { printf("mysql_query error: %s\n", mysql_error(&mysql)); return -1; } res = mysql_use_result(&mysql); while ((row = mysql_fetch_row(res)) != NULL) { printf("%s\t%s\t%s\n", row[0], row[1], row[2]); } mysql_free_result(res); mysql_close(&mysql); return 0; }
上面的代碼使用MySQL提供的C API實現了連接到數據庫、查詢數據和關閉連接等操作。其中,mysql_init函數用于初始化MYSQL結構體,mysql_real_connect函數用于建立與MySQL數據庫的連接,mysql_query函數用于執行SQL查詢語句,并以MYSQL_RES結構體返回數據結果集,mysql_use_result函數獲取結果集中的一行數據,并將每一行數據存儲為MYSQL_ROW結構體,mysql_fetch_row函數用于獲取結果集中的下一行數據。