在Windows中使用libpq连接postgresql数据库
1.首先,编译libpq
下载源码,进入src目录,interface/libpq/win32.mak 文件中,mt命令那些行删掉。
执行 nmake /f win32.mak
在interface/libpq/Release中可以看到libpq.lib
2.服务端配置
修改postgresql.conf
logging_collector = on # 打开日志
// ptest.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
// #include "pch.h"
#include <iostream>
#include <libpq-fe.h> #pragma comment(lib, "libpq.lib")
#pragma comment(lib, "ws2_32.lib")
#pragma comment(lib, "Secur32.lib") int main()
{
const char *conninfo = "postgresql://username@127.0.0.1:5432/testdb"; PGconn *conn;
PGresult *res; conn = PQconnectdb(conninfo); if (PQstatus(conn) != CONNECTION_OK)
{
std::cerr << "Connection to db failed:" << PQerrorMessage(conn);
PQfinish(conn);
exit();
} std::cout << "Connect successful!" << std::endl; res = PQexec(conn, "SELECT * FROM pg_tables;"); if (PQresultStatus(res) != PGRES_TUPLES_OK)
{
std::cerr << "EXECUTION failed:" << PQerrorMessage(conn);
PQclear(res);
PQfinish(conn);
exit();
} int nFields;
nFields = PQnfields(res);
//打印属性名字
for (int i = ; i < nFields; ++i)
{
std::cout << PQfname(res, i) << std::ends;
}
std::cout << "\n---" << std::endl; //打印行
for (int i = ; i < PQntuples(res); ++i)
{
for (int j = ; j < nFields; ++j)
{
std::cout << PQgetvalue(res, i, j) <<'\t'<< std::ends;
}
std::cout << std::endl;
} PQclear(res); PQfinish(conn); getchar(); return ;
}
在Windows中使用libpq连接postgresql数据库的更多相关文章
- ASP.NET MVC 使用 Petapoco 微型ORM框架+NpgSql驱动连接 PostgreSQL数据库
前段时间在园子里看到了小蝶惊鸿 发布的有关绿色版的Linux.NET——“Jws.Mono”.由于我对.Net程序跑在Linux上非常感兴趣,自己也看了一些有关mono的资料,但是一直没有时间抽出时间 ...
- Entity Freamwork 6连接PostgreSql数据库
原文 Entity Freamwork 6连接PostgreSql数据库 开发环境 VS 2015 Update 1 Postgre Sql 9.4 使用过程 1.使用Nuget在项目中添加对E ...
- Abp.NHibernate连接PostgreSQl数据库
Abp.NHibernate动态库连接PostgreSQl数据库 初次接触Abp框架,其框架中封装的操作各类数据的方法还是很好用的,本人还在进一步的学习当中,并将利用abp.NHibernate类库操 ...
- msf连接PostgreSQL数据库
一.启动PostgreSQL服务######################################################################?root@root:~# ...
- powerdesigner连接postgresql数据库生成pdm及word文档
1.准备软件: powerdesigner165与postgresql的驱动:psqlodbc_11_01_0000 2.安装并破解完成powerdesigner165 参看链接:https://ww ...
- 建立安全SSL连接PostgreSQL数据库服务器
建立安全SSL连接PostgreSQL数据库服务器当前物联网的挑战之一就是提供最高的安全级别.这就是为什么需要开启SSL连接到 PostgreSQL. 当你想要安全的存储数据到PostgreSQL数据 ...
- 视频教程--ASP.NET MVC 使用 Petapoco 微型ORM框架+NpgSql驱动连接 PostgreSQL数据库
说好的给园子里的朋友们录制与<ASP.NET MVC 使用 Petapoco 微型ORM框架+NpgSql驱动连接 PostgreSQL数据库> 这篇博客相对应的视频,由于一个月一来没有时 ...
- typescript-koa-postgresql 实现一个简单的rest风格服务器 —— 连接 postgresql 数据库
接上一篇,这里使用 sequelize 来连接 postgresql 数据库 1.安装 sequelize,数据库驱动 pg yarn add sequelize sequelize-typescri ...
- Adobe AIR中使用Flex连接Sqlite数据库(1)(创建数据库和表,以及同步和异步执行模式)
系列文章导航 Adobe AIR中使用Flex连接Sqlite数据库(1)(创建数据库和表) Adobe AIR中使用Flex连接Sqlite数据库(2)(添加,删除,修改以及语句参数) Adobe ...
随机推荐
- https://oi-wiki.org/
OI网站 https://oi-wiki.org/
- [NOIp2016] 换教室
题目类型:期望\(DP\) 传送门:>Here< 题意:现有\(N\)个时间段,每个时间段上一节课.如果不申请换教室,那么时间段\(i\)必须去教室\(c[i]\)上课,如果申请换课成功, ...
- Django 路由系统
Django 路由系统 基本格式 from django.conf.urls import url urlpatterns = [ url(正则表达式, views视图函数,参数,别名), ] 参数说 ...
- [WC2007]剪刀石头布(最大流)
洛古 一句话题意:给定一张图,每两点之间有一条有向边或无向边,把所有无向边定向,使图中三元环个数尽量多 因为原图是一个完全图,假设图中任意三点都能构成三元环,那么途中三元环的个数为:\(\binom{ ...
- 深入理解PHP的运行模式
PHP运行模式有4钟:1)cgi 通用网关接口(Common Gateway Interface))2) fast-cgi 常驻 (long-live) 型的 CGI3) cli 命令行运行 ( ...
- 关于ehcache缓存中eternal及timeToLiveSeconds和timeToIdleSeconds的说明
今天发现开发项目启动时有警告提示:cache 'xx' is set to eternal but also has TTL/TTI set,发现是ehcache缓存设置冲突 所以决定在此mark一下 ...
- (字符串 数组 递归 双指针) leetcode 344. Reverse String
Write a function that reverses a string. The input string is given as an array of characters char[]. ...
- 优秀的电商平台Jshop栗子
摘录自:https://blog.csdn.net/chenjun9205/article/details/52412503 下载源代码 git clone https://git.oschina.n ...
- Vim使用技巧汇总
一 写在开头 1.1 本文内容 Vim使用技巧与学习资源汇总. 二 Vim学习资源 1. Vimtutor 2. Vim中文帮助(http://vimcdoc.sourceforge.net/doc/ ...
- 关于中国菜刀,如何"切菜"
介绍 经典标题党,中国菜刀有大牛已经分析过了->传送门(http://blog.csdn.net/p656456564545/article/details/49671829).博主PHP刚接触 ...