在C++中,可以使用數據庫連接庫(如MySQL Connector/C++、SQLiteCpp)來連接數據庫,并使用SQL語句查詢數據庫中的數據,然后將查詢結果寫入文件。以下是一個簡單的示例代碼:
#include <iostream>
#include <fstream>
#include <mysql/mysql.h>
int main() {
MYSQL* conn = mysql_init(NULL);
if (conn == NULL) {
std::cerr << "Error initializing MySQL connection" << std::endl;
return 1;
}
if (mysql_real_connect(conn, "localhost", "username", "password", "database", 0, NULL, 0) == NULL) {
std::cerr << "Error connecting to database: " << mysql_error(conn) << std::endl;
mysql_close(conn);
return 1;
}
if (mysql_query(conn, "SELECT * FROM table")) {
std::cerr << "Error querying database: " << mysql_error(conn) << std::endl;
mysql_close(conn);
return 1;
}
MYSQL_RES* result = mysql_store_result(conn);
if (result == NULL) {
std::cerr << "Error storing result set: " << mysql_error(conn) << std::endl;
mysql_close(conn);
return 1;
}
std::ofstream outfile("output.txt");
MYSQL_ROW row;
while ((row = mysql_fetch_row(result))) {
for (int i = 0; i < mysql_num_fields(result); i++) {
outfile << row[i] << " ";
}
outfile << std::endl;
}
outfile.close();
mysql_free_result(result);
mysql_close(conn);
return 0;
}
在這個示例中,我們使用MySQL Connector/C++連接數據庫,查詢表中的所有數據,并將結果寫入名為output.txt的文件中。您可以根據自己的需求修改SQL查詢語句和文件輸出格式。確保在編譯時鏈接相應的數據庫連接庫并包含必要的頭文件。