progress資料庫
『壹』 PHP通過ODBC連接到PROGRESS資料庫
Progress的ODBC並不是通用的,需要用專門的ODBC工具軟體來連接,最常用的是Merant ODBC,此以Merant3.7來介紹如何連接progress資料庫,由於可能存在不同的操作系統,當然連接方式有些不同.使用Merant3.7需要在客戶端安裝Progress資料庫才可以.
服務端unix(即資料庫存放在unix上),客戶端window2000伺服器配置:
1.在/etc/services配置文件中添加一行啟動odbc的埠,例如:
merant 6000/tcp # merantODBC的埠
2.在需要使用odbc的用戶的.profile文件中增加變數及路徑例如:
DLC=/dlc/91e /*安裝的progress的路徑*/
PROOIBRK=/dlc/91e/bin/_prooibk /*需要調用的程序的路徑*/PROOIDRV=/dlc/91e/bin/_prooidv /*需要調用的程序的路徑*/PATH=/dlc/91e/bin:$PATH
export PATH
export DLC
export PROOIBRK
export PROOIDRV
3.執行啟動odbc的命令
例如:
/dlc/91e/bin/_prooibk -SV -S merant /*根據progress安裝的目錄不同會不同,merant是services中增加的埠名稱,兩邊可以隨便取名字但必須一樣*/客戶端配置:
1.同服務端配置一樣需要在C:WINNTsystem32driversetc的services文件中增加一行例如:
merant 6000/tcp # merantODBC的埠
2.在系統控制台增加環境變數,建議增加系統的環境變數,根據客戶端progress安裝的目錄不同,可能有所不同DLC c:dlc The directory where you installed the Progress client piecesIDLC c:dlc Required only for 8.1 or higher clientsPROMSGS c:dlcpromsgs The directory and name of the message fileIPROMSGS c:dlcpromsgs Required only for 8.1 or higher clientsPATH c:dlcbin;c:dlc;c:winNTsystem32;%path% Example for Windows NTTEMP c:temp
3.在odbc數據源中作如下配置:
general:
data source name:自己取名
description:隨便
database name:資料庫的名字
user id:不填
oid/oib options:
protocol:tcp
service name:在services文件中加的merantodbc的埠名稱host name:伺服器的名稱或ip(建議用ip,否則還要在hosts文件中加解析)database options:
database access mode:via server
protocol:tcp
service name:啟動資料庫的埠名(是在服務端啟動資料庫服務的埠名也是在服務端的services文件中)host name:啟動資料庫服務的機器名或ip(推薦ip)完成後應該可以連接上了
『貳』 asp.net連接兩個不同的資料庫
正做一個類似的項目,是PROGRESS資料庫和SQLSERVER2000資料庫對接的。要遷移許多表。你的只遷移一個表還是很簡單的。不過運行一次只能導入一次更新的數據,資料庫時時更新的話得讓它定時執行。
需要建立2個類,分別和這2個資料庫連接。
拿到DB1的連接進行SELECT找到數據,再用DB2的連接INSERT數據,就完成功能了。
如果數據量大要用分頁代碼,不然一次SELECT的數據緩存里是裝不下的。
『叄』 請教一個ODBC連接progress資料庫的問題
Windows 客戶端:
1、在 C:\windows\system32\drivers\etc\services 文件中加入一行:
merant 50000/tcp # merant ODBC
註:這跟上面在 Linux 伺服器中的配置是一樣的,必須與伺服器端一致,上面使用了 50000 埠,這里也使用 50000 埠。
2、配置數據源,添加一個數據源,各選項參數如下:
[General]
Data Source Name:給數據源取名,便於在程序中引用
Description:數據源描述說明,隨便寫
Database Name:資料庫的名字,比如 mfgprod
User ID:可不填(這個用戶名是 Progress 資料庫自己的用戶名,不是 Windows 或 Linux 用戶,也不是 MFG/PRO 用戶,如果資料庫設置為拒絕匿名訪問的話就要填寫)
[Oid/Oib Options]
Protocol:TCP (連接類型,就是你在 services 文件中設定的連接類型)
Service Name:埠名稱,在 services 文件中加的 merantODBC 的埠名稱,如 merant(其實直接用埠號也可以,這樣就不用在 services 文件中定義埠了)
Host Name:伺服器的名稱或IP(建議用IP,否則還要在 hosts 文件中加解析)
[Database Options]
Database Access Mode:Via Server (連接方式,分 Direct 和 Via Server,最好使用 Via Server,如果使用 Direct 的話,直接在 Database path 里填入資料庫所在的物理路徑即可,以下各項不需再填)
Protocol:TCP (這里應該是你資料庫的埠類型,我還沒弄清楚,一般填 TCP 即可)
Service Name:啟動資料庫的埠名(注意,這是你的資料庫本身的埠名,即你在伺服器端用 mfgutil 工具所設定的埠,不要問我 mfgutil 怎麼用,實在不知道,可以查看一下資料庫在 MFG/PRO 里對應的 .pf 文件,裡面有寫的)
Host Name: 伺服器的名稱或IP(推薦IP)
最後,點 Test Connect 測試連接即可,成功的話會顯示 Connect establish。
其實用 ODBC 連接 Progress 並不復雜,總的來說就是在伺服器端啟動 ODBC 服務,然後在客戶端使用 ODBC 軟體連接,而其它的步驟只是為了方便它而已,比如定義埠,或者添加搜索路徑(沒多大影響,本教程中省略此步)等,最關鍵就是要在伺服器端成功啟動 ODBC。