要在C++中连接MySQL数据库,您需要使用MySQL C API提供的函数。以下是一个简单的示例代码,演示如何连接MySQL数据库并执行SQL查询:
#include <mysql/mysql.h>
#include <iostream>
int main() {
MYSQL *conn;
MYSQL_RES *res;
MYSQL_ROW row;
conn = mysql_init(NULL);
if (conn == NULL) {
std::cerr << "mysql_init failed" << std::endl;
return 1;
}
if (mysql_real_connect(conn, "localhost", "username", "password", "database", 0, NULL, 0) == NULL) {
std::cerr << "mysql_real_connect failed: " << mysql_error(conn) << std::endl;
mysql_close(conn);
return 1;
}
if (mysql_query(conn, "SELECT * FROM table")) {
std::cerr << "mysql_query failed: " << mysql_error(conn) << std::endl;
mysql_close(conn);
return 1;
}
res = mysql_store_result(conn);
if (res == NULL) {
std::cerr << "mysql_store_result failed: " << mysql_error(conn) << std::endl;
mysql_close(conn);
return 1;
}
while ((row = mysql_fetch_row(res))) {
std::cout << "Field 1: " << row[0] << ", Field 2: " << row[1] << ", Field 3: " << row[2] << std::endl;
}
mysql_free_result(res);
mysql_close(conn);
return 0;
}
在这个示例中,我们首先初始化一个MySQL连接并使用mysql_real_connect
函数连接到数据库。然后我们执行一个SQL查询,将结果存储在MYSQL_RES
结构中,并在循环中逐行处理查询结果。最后,我们释放结果集并关闭数据库连接。
请注意,您需要安装MySQL C API库,并在编译时链接该库。您可以使用-lmysqlclient
标志将该库链接到您的程序中。