文/潘文全
C++ Builder擁有卓越的數(shù)據(jù)庫網(wǎng)絡開發(fā)功能,可以存取各種關系型數(shù)據(jù)庫,提供高效的數(shù)據(jù)感知組件和數(shù)據(jù)存取組件,它不僅可為C/S結構提供客戶端程序,而且可開發(fā)應用服務器程序,實現(xiàn)多層數(shù)據(jù)庫應用程序體系結構,是VFP數(shù)據(jù)庫進行網(wǎng)絡開發(fā)的最佳選擇。
VFP數(shù)據(jù)庫系統(tǒng)有兩種方式建立數(shù)據(jù)表,一種是建立與FoxPro兼容的自由表,另一種是建立數(shù)據(jù)庫,數(shù)據(jù)庫中包含數(shù)據(jù)表及關系,因此在C++ Builder中使用VFP數(shù)據(jù)庫也相應存在 兩種方式,即一種方式是直接調(diào)用VFP自由表,另一種方式是利用ODBC調(diào)用VFP數(shù)據(jù)庫,本文將分別舉例說明。
直接調(diào)用VFP自由表
1.建立數(shù)據(jù)表
數(shù)據(jù)表結構如下:
字段名 類型 寬度 檔案名稱 字符型 100 存放名 字符型 2
2.建立窗體Form1
放置TTable、TDataSource、TDBGrid、TDBNavigator等控件。
設置Ttable控件屬性:
TableType設為ttFoxPro;
TableName設為wjk.dbf;
Active設為true。
連接TDataSource、TDBGrid、TDBNavigator等控件。
修改、刪除、添加和存儲內(nèi)容可通過TDBNavigator控件實現(xiàn)或自行編寫程序。
通過ODBC調(diào)用VFP數(shù)據(jù)庫
1.進入面板的ODBC數(shù)據(jù)源連接VFP數(shù)據(jù)庫。
2.在C++Builder中:
放置TDatabase、TTable、TDataSource、TDBGrid、TDBNavigator等控件。
設置TDatabase控件屬性:
AliasName設為ODBC中連接的VFP數(shù)據(jù)庫名;
DatabaseName設為C++ Builder中用戶定義的數(shù)據(jù)庫名稱;
Params內(nèi)容設置為空;
LoginPrompt為false;
Connected為true,表示連接數(shù)據(jù)庫。
其他組件設置方法與自由表類似。
以上示例中,直接調(diào)用VFP自由表的速度快、方法簡單、易于操作,但是當表中有復合索引時會出現(xiàn)調(diào)用失敗,需從原表中刪除復合索引后,方可再從C++ Builder中調(diào)用;而通過ODBC調(diào)用VFP數(shù)據(jù)庫速度沒有直接調(diào)用快,設置較自由表復雜,但可保留數(shù)據(jù)庫的原有定義。
|