答案是使用MySQL Connector/C++库连接MySQL数据库。首先安装MySQL开发库,Linux用命令sudo apt-get install libmysqlcppconn-dev,Windows从官网下载安装并配置路径;然后包含头文件#include <mysqlx/xdevapi.h>并使用命名空间mysqlx;接着通过Session session("mysqlx://root:your_password@localhost:33060");建立连接,并可选择数据库操作;最后编译时链接对应库,Linux使用-lmysqlcppconn,Windows在项目中配置包含目录、库目录和链接器输入mysqlcppconn8.lib,确保运行时DLL可用。

要在C++中连接MySQL数据库,最常用的方法是使用MySQL官方提供的C API库——MySQL Connector/C++。以下是详细的步骤和示例代码,帮助你实现C++与MySQL数据库的连接。
1. 安装MySQL Connector/C++
在开始前,确保你的系统已经安装了MySQL开发库:
- Linux(Ubuntu/Debian):
sudo apt-get install libmysqlcppconn-dev
- Windows:
从MySQL官网下载并安装 MySQL Connector/C++,配置好头文件和库路径(通常放在 Visual Studio 的 include 和 lib 目录下)。
立即学习“C++免费学习笔记(深入)”;
2. 包含必要的头文件
使用Connector/C++时,需要包含以下头文件:
#include <mysqlx/xdevapi.h>
using namespace mysqlx;
注意:MySQL提供了多种API,推荐使用X DevAPI(较新版本),也可以使用传统的Classic API(sql::Statement等)。
3. 建立连接的示例代码
以下是一个使用X DevAPI连接MySQL的简单例子:
// main.cpp
#include <iostream>
#include <mysqlx/xdevapi.h>
using namespace std;
using namespace mysqlx;
int main() {
try {
// 创建会话
Session session("mysqlx://root:your_password@localhost:33060");
// 测试连接
cout << "成功连接到MySQL服务器!" << endl;
// 可选:选择数据库
Schema db = session.getSchema("testdb");
if (db.existsInDatabase()) {
cout << "数据库 testdb 存在" << endl;
}
} catch (const Error &err) {
cerr << "连接失败: " << err.what() << endl;
}
return 0;
}
4. 编译和链接
编译时需要链接MySQL库:
- Linux:
g++ main.cpp -o main -lmysqlcppconn -std=c++11
- Windows(Visual Studio):
在项目属性中添加:
- 包含目录:MySQL Connector/C++ 的 include 路径
- 库目录:lib 文件路径
- 链接器输入:添加 mysqlcppconn8.lib
确保运行时能访问到对应的DLL(如 mysqlcppconn8.dll)。
基本上就这些。只要环境配置正确,C++连接MySQL并不复杂,关键是安装合适的库并正确链接。建议先用命令行测试连接是否通,再集成到代码中。











