https://www.2cto.com/database/201707/658910.html

开发环境

Visual Studio 2017[15.2(26430.16)]

PostgreSQL 9.6.3

配置步骤

先从上方的网址中下载需要版本的PostgreSQL。此处有32位和64位可选,这里的位数指的是你调用PostgreSQL开发出来的软件的位数版本,而不是你计算机的位数。

打开下载好的安装包,大部分步骤可以直接点击“Next”。

在“Password”界面可以给默认用户(用户名为“prostgres”)添加一个密码。

安装完成后,去掉钩,点击“Finish”。

新建一个项目,本文选择控制台应用程序(空项目),方便演示。

进入项目属性。

选择对应的平台配置,多种配置需要分别进行配置。

将PostgreSQL安装目录下的“include”文件夹添加至项目。

方法类似,将“lib”文件夹添加至项目。

添加libpq.lib。

手动输入“libpq.lib”。

完成项目配置。

由于VS2005中没有C++目录,需要用以下方法添加上述目录:

1. 添加编译所需要(依赖)的 lib 文件
[解决方案资源管理器]“项目-属性-配置属性-连接器-输入-附加依赖项”里填写“libpq.lib”,多个 lib 以空格隔开。
(等同于“#pragma comment(lib, "winsock.lib") ”语句)
2. 添加库(Libs)文件目录
方法 1:[解决方案资源管理器]“项目-属性-配置属性-连接器-常规-附加库目录”
方法 2:[菜单]“工具-选项-项目和解决方案-C++ 目录”,选择对应平台,然后添加所需“库文件”目录
3. 添加包含(include)文件目录
方法 1:[解决方案资源管理器]“项目-属性-配置属性-C/C++-常规-附加包含目录”
方法 2:[菜单]“工具-选项-项目和解决方案-C++ 目录”,选择对应平台,然后添加所需“包括文件”目录

打开PostgreSQL安装目录。

将“bin”文件夹中的“libeay32.dll”、“libiconv-2.dll”、“libintl-8.dll”、“ssleay32.dll”复制到项目目录。

将“bin”文件夹中的“libpq.dll”复制到项目目录。

测试代码

测试代码前不要忘了选择项目平台配置

#include

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<libpq-fe.h>
int main () {
    int lib_ver = PQlibVersion ();
    printf ("Version of libpq: %d\n", lib_ver);
    PGconn *conn = PQconnectdb ("host=192.168.1.104 dbname=testdb user=postgres password=abc123");
    if (PQstatus (conn) == CONNECTION_BAD) {
        fprintf (stderr, "Connection to database failed: %s\n",
            PQerrorMessage (conn));
        PQfinish (conn);
        return 0;
    }
    int ver = PQserverVersion (conn);
    printf ("Server version: %d\n", ver);
    PQfinish (conn);
    return 0;
}</libpq-fe.h>

运行结果:

Visual Studio配置C/C++-PostgreSQL(9.6.3)开发环境(ZT)的更多相关文章

  1. visual studio 2015下使用gcc调试linux c++开发环境搭建完整详解

    一直以来,相信绝大部分的开发都是windows/mac下做开发,尤其是非嵌入式和qt系的,而开源服务器程序绝大部分都是跑在Linux下,几乎就没有跑在windows下的.一直以来开发人员都是在wind ...

  2. 重磅!微软发布 Visual Studio Online:Web 版 VS Code + 云开发环境

    北京时间 2019 年 11 月 4 日,在 Microsoft Ignite 2019 大会上,微软正式发布了 Visual Studio Online (VS Online)公开预览版! 如今发布 ...

  3. openGL学习:Visual Studio配置OpenGL

    Visual Studio配置OpenGL 分两步: (一)下载glut,并将其放置到适当的位置 (二) 进行vs2005项目属性配置 ******************************** ...

  4. NUint使用详解及Visual Studio配置

    NUint使用详解及Visual Studio配置 阅读目录 什么是单元测试? 为什么使用单元测试? NUint使用详解: 示例 属性 断言 简单测试 VS配置: External Tools Vis ...

  5. (三)配置Hadoop1.2.1+eclipse(Juno版)开发环境,并运行WordCount程序

    配置Hadoop1.2.1+eclipse(Juno版)开发环境,并运行WordCount程序 一.   需求部分 在ubuntu上用Eclipse IDE进行hadoop相关的开发,需要在Eclip ...

  6. visual studio 配置属性中增加自定义宏和宏值

    visual studio中有一些预先定义的宏,用于配置项目属性,如SolutionDir.我们也可以自定义类似的宏,从而在配置包含目录(include)或添加依赖项时简化配置项. 如何创建自己的宏呢 ...

  7. Visual studio 配置

    解决方案 一个解决方案的文件结构: .sln        项目目录         debug   release 其中,debug与release放置最终生成的dll或exe,项目目录下包含 头文 ...

  8. 配置visual studio code进行asp.net core rc2的开发

    1.安装.net core sdk https://github.com/dotnet/cli#installers-and-binaries,根据你的系统选择下载. 2.下载vscode的C#扩展插 ...

  9. 配置visual studio code进行asp.net core rc2的开发(转载jeffreywu)

    1.安装.net core sdk https://github.com/dotnet/cli#installers-and-binaries,根据你的系统选择下载 2.下载vscode的C#扩展插件 ...

随机推荐

  1. vue vue-resource 请求数据

    main.js import Vue from 'vue'; import App from './App.vue'; /*使用vue-resource请求数据的步骤 1.需要安装vue-resour ...

  2. 在线学习和在线凸优化(online learning and online convex optimization)—基础介绍1

    开启一个在线学习和在线凸优化框架专题学习: 1.首先介绍在线学习的相关概念 在线学习是在一系列连续的回合(rounds)中进行的: 在回合,学习机(learner)被给一个question:(一个向量 ...

  3. vue属性

    1. 图片地址: data:{ url:"https://www.baidu.com/img/bd_logo1.png"}, <img v-bind:src="ur ...

  4. openstack cpu pinning

    为了减少CPU竞争,提高CPU cache命中率,可以把guest的vcpu pin到host的物理CPU上. 在openstack中,可以添加以下到flavor extra specs: hw:cp ...

  5. for循环中进行联网请求数据、for循环中进行异步数据操作,数据排序错乱问题解决;

    for循环中进行联网请求数据,由于网络请求是异步的,第一个网络请求还没有回调,第二次第三次以及后续的网络请求又已经发出去了,有可能后续的网络请求会先回调:这时我们接收到的数据的排序就会错乱:怎么才能让 ...

  6. BZOJ 3473: 字符串 (广义后缀自动机)

    /* 广义后缀自动机, 每次加入维护 该right集合的set, 然后可以更新所有的parent,最终能够出现在k个串中right集合也就是set大小大于等于k的部分 这样的话就给了我们要跳的节点加了 ...

  7. SPOJ3276 D-query

    题意:n个数 a1...an,q组询问,每组询问给定 l,r,输出 [ l, r ] 有多少不同的数 ( n ≤30000, q ≤200000, ai ≤ 106 ) 离线 + 树状数组维护 #in ...

  8. Java 递归详解

    递归详解: 1.递归一句话通俗讲就是一个方法自动重复调用自己的过程. 2.因为是重复调用自己了,所以看起来像一个循环,所以为了避免内存溢出系统崩溃,我们需要在方法里加一个返回值判断,用于递归循环的跳出 ...

  9. VS出现异常?!和十进制转二进制比是小事

    今天被VS的纠错机制下了一小跳. 使用VS时,如果代码出现异常,比如我,运行代码时,出现了无限循环,在调试的时候VS会自动停止运行,并在错误代码行断点提示. 之后会出现一个杂项文件,提示你这里错了.注 ...

  10. JAVA操作字符串

    package com.test; import org.junit.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; /* ...