請先看這篇文章 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 使用者名稱"進入資料庫”