在C++中使用MySQL C API需要遵循以下步驟:
/usr/include/mysql
或/usr/local/include/mysql
目錄下。你需要引入以下頭文件:#include <mysql.h>
g++ your_program.cpp -o your_program -lmysqlclient
這里,your_program.cpp
是你的C++源代碼文件,your_program
是生成的可執行文件,-lmysqlclient
表示鏈接到MySQL客戶端庫。
mysql_init()
函數初始化一個MYSQL
結構體,然后使用mysql_real_connect()
函數建立與MySQL服務器的連接。例如:MYSQL *conn;
conn = mysql_init(NULL);
if (!conn) {
fprintf(stderr, "mysql_init() failed\n");
exit(1);
}
if (mysql_real_connect(conn, "localhost", "username", "password", "database", 3306, NULL, 0)) {
fprintf(stderr, "mysql_real_connect() failed: %s\n", mysql_error(conn));
exit(1);
}
mysql_query()
函數執行SQL查詢,然后使用mysql_store_result()
、mysql_use_result()
或mysql_fetch_row()
等函數處理查詢結果。例如:if (mysql_query(conn, "SELECT * FROM your_table")) {
fprintf(stderr, "mysql_query() failed: %s\n", mysql_error(conn));
exit(1);
}
MYSQL_RES *result = mysql_store_result(conn);
if (!result) {
fprintf(stderr, "mysql_store_result() failed: %s\n", mysql_error(conn));
exit(1);
}
MYSQL_ROW row;
while ((row = mysql_fetch_row(result))) {
// Process the row data
}
mysql_free_result(result);
mysql_close()
函數關閉與MySQL服務器的連接。例如:mysql_close(conn);
mysql_error()
函數獲取錯誤消息并相應地處理它。這只是一個簡單的示例,展示了如何在C++中使用MySQL C API。實際上,你可以執行更復雜的操作,如插入、更新和刪除數據,以及使用預處理語句等。要了解更多關于MySQL C API的信息,請參閱官方文檔:https://dev.mysql.com/doc/c-api/8.0/en/