【C++】Windows使用Visual Studio C++链接云数据库PostgreSQL(沉浸式老爷教学)

本文涉及的产品
RDS PostgreSQL Serverless,0.5-4RCU 50GB 3个月
推荐场景:
对影评进行热评分析
云原生数据库 PolarDB MySQL 版,通用型 2核4GB 50GB
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
简介: 【C++】Windows使用Visual Studio C++链接云数据库PostgreSQL(沉浸式老爷教学)

一、前置条件

  1. 下载libpqxx【github传送门】
  2. 安装CMake工具【CMke传送门】
  3. 下载PostgreSQL【PostgreSQL传送门】

二、安装PostgreSQL工具

点击下载,直接安装即可。过程中出现的插件选择64位即可。那些都不重要。

安装完成后如下:

关注 “测试开发自动化” 公众号,获取更多学习内容

三、编译libpqxx库

  1. 从Github下载至本地,在文件夹下解压。
  2. 管理员方式运行CMake软件(必须以管理员方式运行,否则可能会报错),填写Where is the source code 和 Where to build the binaries 如下:

  1. 点击Configure 和 Generate 按钮
  2. 回到D:/libpqxx-master 路径下会生成一个build文件夹。

  3. 使用管理员模式启动visual studio,打开libpqxx.sln工程文件(必须用管理员模式,否则后面构建会报错)

  4. 右键ALL_BUILD >> 属性 >> 常规 >> C++通用标准 >> 最新C++ ,点击确定。

  5. 设置为Release X64,分别右键INSTALL >> 生成,PACKAGE >> 生成,pqxx >> 生成。

  6. build目录下会生成一个_CPack_Packages文件夹

关注 “测试开发自动化” 公众号,获取更多学习内容

四、Visual Studio配置测试

新建自己的工程,属性中需要配置如下内容:

1)C/C++ >> 附加包含目录添加:

D:\libpqxx-master\build_CPack_Packages\win64\TGZ\libpqxx-7.8.0-win64\include

2)链接器 >> 附加库目录添加:

D:\PostgreSQL\15\lib

D:\libpqxx-master\build_CPack_Packages\win64\TGZ\libpqxx-7.8.0-win64\lib

3)链接器 >> 输入 >> 附加依赖项 添加:

pqxx.lib

libpq.lib

ws2_32.lib

wsock32.lib

4)测试程序

#include <iostream>
#include <pqxx/pqxx>
int main() {
    try {
        // 用您的云PostgreSQL数据库信息替换以下内容
        std::string connection_string =
           "host=your_host_name user=your_user_name password=your_password dbname=your_database_name port=your_port_number";
        pqxx::connection connection(connection_string);
        if (connection.is_open()) {
            std::cout << "Successfully connected to the PostgreSQL database." << std::endl;
        }
        else {
            std::cout << "Cannot open the PostgreSQL database." << std::endl;
            return 1;
        }
        pqxx::work transaction(connection);
        // 在这里执行您的数据库操作
        pqxx::result result = transaction.exec("SELECT * FROM  your_table_name");
        for (const auto& row : result) {
            for (const auto& column : row) {
                std::cout << column.c_str() << " ";
            }
            std::cout << std::endl;
        }
        transaction.commit();
        //connection.disconnect();
    }
    catch (const std::exception& e) {
        std::cerr << "Error: " << e.what() << std::endl;
        return 1;
    }
    return 0;
}

关注 “测试开发自动化” 公众号,获取更多学习内容

如果对您有帮助,关注+收藏!

文章知识点与官方知识档案匹配,可进一步学习相关知识


相关实践学习
函数计算X RDS PostgreSQL,基于LLM大语言模型构建AI知识库
基于ChatGLM6B 大语言模型构建AI知识库问答应用。答疑群17125058181
相关文章
|
7月前
|
存储 缓存 数据库
C/C++工程师面试题(数据库篇)
C/C++工程师面试题(数据库篇)
122 9
|
7月前
|
IDE 关系型数据库 开发工具
使用Visual Basic进行Windows窗体开发
【4月更文挑战第27天】本文介绍了使用Visual Basic进行Windows窗体(WinForms)开发的步骤,从搭建开发环境到创建、设计用户界面,再到编写事件驱动的代码和数据绑定。Visual Basic结合WinForms提供了一种易学易用的桌面应用开发方案。通过调试、优化、部署和维护,开发者可以构建专业应用程序。随着技术发展,掌握最新UI设计和开发工具对于保持竞争力至关重要。本文为初学者提供了基础指导,鼓励进一步探索和学习。
232 0
|
7月前
|
编译器 开发工具 C++
Dev-C++详细安装教程及中文设置(附带安装包链接)
Dev-C++详细安装教程及中文设置(附带安装包链接)
3137 0
|
7月前
|
JSON C++ 数据格式
【C++】Visual Studio C++使用配置Json库文件(老爷式教学)
【C++】Visual Studio C++使用配置Json库文件(老爷式教学)
|
7月前
|
关系型数据库 数据库 C++
【C++】Windows使用Visual Studio C++链接云数据库PostgreSQL(沉浸式老爷教学)
【C++】Windows使用Visual Studio C++链接云数据库PostgreSQL(沉浸式老爷教学)
|
6月前
|
C++ Python Windows
在Visual Studio中使用Python(Windows)
在Visual Studio中使用Python(Windows)
|
3月前
|
C++
C/C++静态链接pthread库的坑【-static -pthread】
C/C++静态链接pthread库的坑【-static -pthread】
|
5月前
|
C++ Windows
FFmpeg开发笔记(三十九)给Visual Studio的C++工程集成FFmpeg
在Windows上使用Visual Studio 2022进行FFmpeg和SDL2集成开发,首先安装FFmpeg至E:\msys64\usr\local\ffmpeg,然后新建C++控制台项目。在项目属性中,添加FFmpeg和SDL2的头文件及库文件目录。接着配置链接器的附加依赖项,包括多个FFmpeg及SDL2的lib文件。在代码中引入FFmpeg的`av_log`函数输出"Hello World",编译并运行,若看到"Hello World",即表示集成成功。详细步骤可参考《FFmpeg开发实战:从零基础到短视频上线》。
249 0
FFmpeg开发笔记(三十九)给Visual Studio的C++工程集成FFmpeg
|
6月前
|
Linux vr&ar C语言
Linux怎样更新Centos下Gcc版本支持C17?Centos7快速安装gcc8.3.1 可支持C++17(附gcc相关链接整理)
Linux怎样更新Centos下Gcc版本支持C17?Centos7快速安装gcc8.3.1 可支持C++17(附gcc相关链接整理)
385 2
|
6月前
|
SQL 关系型数据库 MySQL
使用 C++ 结合 MySQL 数据库实现留言板
使用 C++ 结合 MySQL 数据库实现留言板
171 1