CentOS C++数据库连接教程
作者:技术拾光时间:2026-07-17 07:32:03浏览:543
在CentOS上通过C++连接MySQL或PostgreSQL数据库,需先使用yum安装相应的客户端开发包(如mysql-devel或postgresql-devel),随后利用官方CAPI编写连接、查询及错误处理代码,最后编译链接并执行,实现数据库操作。
在 CentOS 上通过 C++ 操作数据库,大家一般都会优先考虑 MySQL 或 PostgreSQL 这两款主流的关系型数据库。话不多说,直接上具体的操作步骤和代码示例,跟着做就能跑通。

连接 MySQL 数据库
-
安装客户端库
先用 yum 装上开发包,这是前提:sudo yum install mysql-devel -
编写 C++ 代码
以下使用 MySQL 官方的 C API 实现连接与查询:#include#include int main() { MYSQL *conn; MYSQL_RES *res; MYSQL_ROW row; // 初始化连接 conn = mysql_init(NULL); // 连接到数据库 if (!mysql_real_connect(conn, "localhost", "user", "password", "database", 3306, NULL, 0)) { fprintf(stderr, "%s\n", mysql_error(conn)); exit(1); } // 执行查询 if (mysql_query(conn, "SELECT * FROM table_name")) { fprintf(stderr, "%s\n", mysql_error(conn)); exit(1); } // 获取结果集 res = mysql_store_result(conn); // 遍历结果集 while ((row = mysql_fetch_row(res)) != NULL) { std::cout << row[0] << " " << row[1] << std::endl; } // 释放资源 mysql_free_result(res); mysql_close(conn); return 0; } -
编译代码
编译时链接 MySQL 客户端库:g++ -o mysql_example mysql_example.cpp -lmysqlclient -
运行程序
./mysql_example
连接 PostgreSQL 数据库
-
安装客户端库
同样先安装 PostgreSQL 的开发包:sudo yum install postgresql-devel -
安装 libpqxx 并编写代码
PostgreSQL 的 C++ 连接推荐用 libpqxx 库,先装上:sudo yum install libpqxx-devel然后写一段示例代码:
#include#include int main() { try { // 连接到数据库 pqxx::connection C("dbname=database user=user password=password hostaddr=127.0.0.1 port=5432"); // 创建一个非事务对象 pqxx::nontransaction N(C); // 执行查询 pqxx::result R = N.exec("SELECT * FROM table_name"); // 遍历结果集 for (auto row : R) { std::cout << row[0].as<:string>() << " " << row[1].as<:string>() << std::endl; } } catch (const std::exception &e) { std::cerr << e.what() << std::endl; return 1; } return 0; } -
编译代码
编译时需要链接 libpqxx 和 libpq:g++ -o pgsql_example pgsql_example.cpp -lpqxx -lpq -
运行程序
./pgsql_example
以上就是在 CentOS 上用 C++ 连接 MySQL 和 PostgreSQL 的完整流程。实际使用时,记得根据自身环境调整数据库地址、用户名、密码以及查询语句,错误处理也需要进一步完善。希望能帮你快速上手。
