在C語言中,連接MySQL數據庫非常簡單。只需要使用MySQL提供的C API庫即可。
// 在代碼中包含mysql.h頭文件 #include// 聲明mysql連接變量 MYSQL *con; // 初始化mysql連接,并連接到數據庫服務器 con = mysql_init(NULL); if (con == NULL) { fprintf(stderr, "%s\n", mysql_error(con)); exit(1); } if (mysql_real_connect(con, "localhost", "user", "password", "database", 0, NULL, 0) == NULL) { fprintf(stderr, "%s\n", mysql_error(con)); mysql_close(con); exit(1); } // 執行SQL語句 if (mysql_query(con, "SELECT * FROM table")) { fprintf(stderr, "%s\n", mysql_error(con)); mysql_close(con); exit(1); } // 獲取執行SQL語句的結果 MYSQL_RES *result = mysql_store_result(con); if (result == NULL) { fprintf(stderr, "%s\n", mysql_error(con)); mysql_close(con); exit(1); } // 處理結果集 MYSQL_ROW row; while ((row = mysql_fetch_row(result))) { printf("%s \n", row[0]); } // 釋放結果集、關閉連接 mysql_free_result(result); mysql_close(con);
在上述代碼中,需要注意的是:
- 連接MySQL數據庫需要包含mysql.h頭文件
- 連接變量要使用MYSQL類型聲明
- 連接初始化要使用mysql_init()函數
- 連接服務器要使用mysql_real_connect()函數
- 執行SQL語句需要使用mysql_query()函數
- 處理結果集需要使用mysql_store_result()和mysql_fetch_row()函數
- 釋放結果集和關閉連接需要使用mysql_free_result()和mysql_close()函數