请先看这篇文章 PostgreSQL OLEDB 安装指南
文章中提及:
“首先,从下面的站点下载最新的OleDB Provider For PostgreSQL。
http://gborg.postgresql.org/project/oledb/download/download.php
在下载的包中有两个文件,一个是libpq.dll,另一个是PgOleDb.dll。在安装的时候通常这两个文装应放在一起。然后在使用 RegSvr32 PgOleDB.dll 来注册。这样,Ole DB Provider For PostgreSQL才可以被ADODB所使用。
接下来,你就可以使用ADODB来连接PostgreSQL数据库,以下是相应的连接字符串的
Provider=PostgreSQL OLE DB Provider;Password="";User ID=postgres;Data Source=localhost;Location=template1;Extended Properties=""
其中Data Source是PostgreSQL的服务器名,我安装在本地机器,Location为数据库名称。
如果,你经常忘记该怎么来写连接字符串。你可以在Windows文件系统里创建一个后缀名为.udl的空白文件,然后双击该文件,进行填写 ,然后用文本编辑器打开就可以看到连接字符串”。
要注意的是, 你需要libpq.dll和PgOleDb.dll放到系统目录(C:/windows/system32)里面,然后注册 。如果遇到其他异常情况,请参考http://www.connectionstrings.com/Providers/pgoledb 顺便提下,这个网站很不错http://www.connectionstrings.com/
如《 PostgreSQL OLEDB 安装指南 》那篇文章中所说,“ oledb for postgresql,经常出错,不适合正式场合用 ”,推荐使用ODBC,那么你可以到
http://www.postgresql.org/ftp/odbc/versions/msi/ 这里去下载安装。
安装后你首先需要在 开始菜单-管理工具-数据源(ODBC) 中添加数据源,才能如文章中所讲的在udl文件的配置中找到PostgreSQL。
下面是我的连接字符串:
ado(oledb):
strConnect = "Provider=PostgreSQL OLE DB Provider;Password=test;User ID=test;Data Source=10.13.76.80;Location=test;Extended Properties=""";
odbc,这个需要先配置数据源:
strConnect = "Provider=MSDASQL.1;Persist Security Info=False;User ID=test;Data Source=PostgreSQL30";
顺便带上个oracle的:
strConnect.Format("Provider=OraOLEDB.Oracle.1; Data Source=(DESCRIPTION =(ADDRESS = (PROTOCOL /
= TCP)(HOST = %s)(PORT =%s))(CONNECT_DATA =(SERVICE_NAME = %s)));User ID=%s;Password=%s; /
Persist Security Info=False", strHost, strPort, strDataSource, strName, strPsw );
最后提下,(忘记刚才在哪看的了)postgresql的库文件不支持VC6,只支持高版本的VC.net。 如果非要在VC6里面使用libpq.lib,肯定需要用vcc编译器编译一编。
另一个有关初始化创建数据库的问题:http://deepfuture.javaeye.com/blog/587477
设置环境变量
“set PGHOME=d:/pgsql
set PATH=%PGHOME%/bin;%path%
set PGHOST=localhost
set PGLIB=%PGHOME%/lib
set PGDATA=%PGHOME%/data”
常用命令
“1 initdb 初始化 数据库。(initdb --encoding=UTF8 --locale=C)
2 pg_ctl start 启动数据库
3 pg_ctl stop 停止数据库
4 post_svc -install 建立windows nt 服务(需要设置系统环境变量)
5 post_svc -remove 删除 windows nt 服务
6 使用"createdb 库名" 新建数据库
7 使用"createuser 用户名"创建数据库帐号
8 使用"psql -h localhost -d 库名- U 用户名"进入数据库”