一 利用ODBC聯接FoxPro數據庫
在Power Builder中直接訪問FoxPro數據庫只能通過ODBC方式
在開發環境下可以直接在PowerBar畫板上配置ODBC聯接FoxPro數據庫方法如下
單擊Configure ODBC工具鈕在Installed Drivers目錄框中選擇Microsoft Foxpro Driver (*dbf)
單擊Create按鈕命名數據源名選擇版本取消使用當前工作目錄選項
單擊選定目錄選擇被聯接數據庫所在的目錄確定退出
通過ODBC方式聯接的FoxPro的數據庫一定要滿足FoxPro的數據庫格式即數據庫文件結構必須是字節文件描述 若干個字節的字段描述 結構描述結束符(D) 記錄記錄…… 文件結束符(A)由此看來傳統的DBF數據庫文件均可通過該方式聯接對於Visual FoxPro環境下建立的表(Table)其結構與傳統的數據庫結構是不同的它在字段描述結束符(D)與記錄之間加上了二百多個字節的內容但在未納入VFP的數據庫(Dbc)之前其內容為此時仍可以通過這種方式聯接一旦納入數據庫中該段字節已被填上了其它內容無法再聯接
在Power Builder應用程序中使用事務處理對象來聯接數據庫這種事務處理對象即有默認的SQLCA用戶也可以自己生成以方便訪問多個數據庫在程序中使用事務處理對象時一般必須先指明DBMSDbParm兩個屬性對於FoxPro數據庫還必須指明 Database useridservername幾個屬性這一點是與訪問其他類型的數據庫不同的地方
sqlcadbms=ODBC // 指定聯接方式ODBC
sqlcadatabase=D:\prg\pubdata // 指定被聯接數據庫所在目錄
sqlcauserid=public // 用戶識別號都為 public
sqlcaservername=FOXPRO // 服務器名均為FOXPRO
sqlcadbparm=Connectstring=DSN=tscxs //數據源名
connect using sqlca; // 實施聯接
……
通過對FoxPro數據庫的聯接用戶便可以在Power Builder開發環境下應用程序中使用這些數據庫快速地開發出自己的信息管理系統實現對這些數據庫的維護與管理
二 將DBF文件轉換為SQL Anywhere 的DB文件格式
在Power Builder環境下附帶有一個數據庫系統SQL Anywhere在Power Builder中利用它用戶可以直接建立維護數據庫在SQL Anywhere中數據庫結構雖然與VFP不同但概念是一致的即數據庫是系統中相關的各種數據這些數據又因不同用途組織成不同的表這些表共同構成數據庫與傳統的數據庫(DBF)相類比PBVFP中的表即是傳統意義的數據庫PBVFP中的數據庫類似於傳統的數據庫(DBF)文件所在的目錄SQL Anywhere中提供了將傳統的DBF文件轉換為該系統下的數據庫文件(DB)中的表的工具為了實現這一轉換用戶必須先建立一個新的表再將DBF格式的文件內容導入該表中
對於DBF文件必須是傳統意義上的數據庫如FoxProdBaseFoxBASE環境下的數據庫文件該種數據庫文件嚴格遵循數據文件==數據庫結構+數據庫記錄這一格式其結構如下字節文件描述 若干個字節的字段描述 結構描述結束符(D) 記錄記錄…… 文件結束符(A)
A C
// 文件描述時間長
度記錄長記錄數
E D
// 第一個字段名類
型長起始位
F
// 第二個字段
F
……
D F C
// 結構結束符(D)
F D D E
記錄
A
F E ……
D A
// 文件結束符(A)
將DBF文件直接轉換為PB(SQL Anywhere)中的表操作步驟如下
[] []
From:http://tw.wingwit.com/Article/program/PB/201311/24619.html