如何在Delphi中訪(fǎng)問(wèn)DBF數(shù)據(jù)庫(kù)

xBase是所有源自原始dBase數(shù)據(jù)庫(kù)格式(.dbf)的數(shù)據(jù)庫(kù)的通用術(shù)語(yǔ)。該列表包括Visual FoxPro、Clipper、dBase III、dBase IV等。這些數(shù)據(jù)庫(kù)被非正式地稱(chēng)為dBase克隆,因?yàn)樗鼈兪莇Base的直接后代或模仿者。

中站ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書(shū)未來(lái)市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)建站的ssl證書(shū)銷(xiāo)售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話(huà)聯(lián)系或者加微信:18982081108(備注:SSL證書(shū)合作)期待與您的合作!

xBase數(shù)據(jù)庫(kù)將大量格式化數(shù)據(jù)以結(jié)構(gòu)化形式存儲(chǔ)在.dbf數(shù)據(jù)文件中。在類(lèi)似dBase的數(shù)據(jù)庫(kù)中,.dbf文件存儲(chǔ)一個(gè)表,其中保留了表描述,字段描述符和記錄。類(lèi)似dBase的現(xiàn)代數(shù)據(jù)庫(kù)還具有用于大型文本字段(備忘錄)、命令、過(guò)程、備份等的文件。

有各種各樣的數(shù)據(jù)庫(kù)引擎可以讀取和操作DBF文件中的數(shù)據(jù),但是它們都不了解xBase數(shù)據(jù)庫(kù)的所有格式——這些數(shù)據(jù)庫(kù)引擎中的大多數(shù)都可以與xBase系列的一種或兩種方言進(jìn)行交互。與其他現(xiàn)有解決方案不同,UniDAC中的Delphi數(shù)據(jù)訪(fǎng)問(wèn)提供程序TDBFUniProvider提供了一種引擎,該引擎可以理解許多類(lèi)似dBase的數(shù)據(jù)庫(kù)中的DBF文件。

UniDAC是一款通用數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)組件,提供了多個(gè)數(shù)據(jù)庫(kù)的直接訪(fǎng)問(wèn),如針對(duì)Windows的Delphi, C++Builder, Lazarus (以及 Free Pascal) , Mac OS X, iOS, Android, Linux和64和32位的FreeBSD等等。

TDBFUniProvider提供對(duì)xBase數(shù)據(jù)庫(kù)的直接訪(fǎng)問(wèn),并支持所有dBase本機(jī)數(shù)據(jù)類(lèi)型(字符、數(shù)字、邏輯、數(shù)據(jù)、備忘錄)。它用作SQL引擎,對(duì)數(shù)據(jù)庫(kù)文件執(zhí)行命令。項(xiàng)目中的Delphi代碼被編譯成可執(zhí)行文件,不需要任何其他外部文件即可訪(fǎng)問(wèn)和操作DBF文件中的數(shù)據(jù)。

用于訪(fǎng)問(wèn)xBase數(shù)據(jù)庫(kù)文件的UniDAC Delphi組件支持多種數(shù)據(jù)庫(kù)文件格式:dBase III、dBase IV、dBase V、dBase VII、FoxPro2、Visual FoxPro、Clipper、CodeBase、HiPer-Six。除了允許開(kāi)發(fā)人員使用標(biāo)準(zhǔn)的SQL-92語(yǔ)法外,它還提供了一種快速的方法來(lái)重建表并刪除已刪除的記錄,以減小數(shù)據(jù)庫(kù)文件的大小。

創(chuàng)建示例Delphi應(yīng)用程序以訪(fǎng)問(wèn)xBase數(shù)據(jù)庫(kù)

我們將創(chuàng)建一個(gè)簡(jiǎn)單的Delphi應(yīng)用程序,該應(yīng)用程序?qū)⒁訴isual FoxPro格式連接到數(shù)據(jù)庫(kù),并在單擊“顯示”按鈕時(shí)顯示表中的記錄。

1、在“工具選項(xiàng)板”中找到TUniConnection、TUniQuery、TUniDataSource、TDBFUniProvider、TDBGrid和TButton組件,并將它們放在表單上。

如何在Delphi中訪(fǎng)問(wèn)DBF數(shù)據(jù)庫(kù)

2、雙擊表單上的UniConnection1組件。切換到“選項(xiàng)”選項(xiàng)卡,然后將“直接”設(shè)置為T(mén)rue。

如何在Delphi中訪(fǎng)問(wèn)DBF數(shù)據(jù)庫(kù)

3、返回到“連接”選項(xiàng)卡,選擇“DBF”作為提供程序,然后輸入計(jì)算機(jī)上Visual FoxPro(或任何其他xBase數(shù)據(jù)庫(kù))的路徑。單擊連接。如果一切順利,紅色圓圈將變?yōu)榫G色。

如何在Delphi中訪(fǎng)問(wèn)DBF數(shù)據(jù)庫(kù)

4、在UniDataSource1中,將DataSet屬性設(shè)置為UniQuery1。

如何在Delphi中訪(fǎng)問(wèn)DBF數(shù)據(jù)庫(kù)

5、選擇DBGrid1并將DataSource屬性設(shè)置為UniDataSource1。

如何在Delphi中訪(fǎng)問(wèn)DBF數(shù)據(jù)庫(kù)

6、選擇UniQuery1組件并將Connection屬性設(shè)置為UniConnection1,然后雙擊該組件并輸入SQL語(yǔ)句。單擊確定。

如何在Delphi中訪(fǎng)問(wèn)DBF數(shù)據(jù)庫(kù)

7、將按鈕的“標(biāo)題”屬性更改為“在對(duì)象檢查器中顯示”。雙擊按鈕,切換到“代碼”選項(xiàng)卡并添加UniQuery1.Open; 到OnClick事件處理程序代碼。

如何在Delphi中訪(fǎng)問(wèn)DBF數(shù)據(jù)庫(kù)

8、按F9編譯并運(yùn)行您的應(yīng)用程序。如果程序編譯沒(méi)有錯(cuò)誤,則應(yīng)該看到已編譯的表單應(yīng)用程序。單擊顯示以獲取并查看Visual FoxPro表中的數(shù)據(jù)。

如何在Delphi中訪(fǎng)問(wèn)DBF數(shù)據(jù)庫(kù)

檢索損壞的數(shù)據(jù)和元數(shù)據(jù)

xBase方言歷史悠久,.dbf文件中的字段包含不受支持的類(lèi)型的數(shù)據(jù)的情況并不罕見(jiàn)。要解決任何不受支持的數(shù)據(jù)類(lèi)型的問(wèn)題,UniDAC提供了兩個(gè)選項(xiàng):IgnoreDataErrors和IgnoreMetaDataErrors。前一個(gè)選項(xiàng)在打開(kāi)DBF表時(shí)強(qiáng)制UniDAC忽略損壞的數(shù)據(jù)錯(cuò)誤,而后一個(gè)選項(xiàng)使UniDAC忽略元數(shù)據(jù)錯(cuò)誤:當(dāng)兩個(gè)選項(xiàng)都設(shè)置為T(mén)rue時(shí),將跳過(guò)損壞的數(shù)據(jù),并正確地檢索其他數(shù)據(jù)。

另一個(gè)功能是當(dāng)您不完全了解DBF文件的格式時(shí)(DBFFormat選項(xiàng)中的dfAuto值),可以自動(dòng)確定xBase數(shù)據(jù)庫(kù)的方言。

支持的目標(biāo)平臺(tái)

UniDAC支持多個(gè)目標(biāo)平臺(tái):您可以創(chuàng)建一個(gè)訪(fǎng)問(wèn)DBF數(shù)據(jù)庫(kù)的應(yīng)用程序,用于:

  • Windows,32位和64位

  • macOS,32位和64位

  • iOS,32位和64位

  • Android,32位和64位

  • Linux,32位和64位

網(wǎng)頁(yè)標(biāo)題:如何在Delphi中訪(fǎng)問(wèn)DBF數(shù)據(jù)庫(kù)
文章來(lái)源:http://bm7419.com/article38/psccsp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、電子商務(wù)、網(wǎng)站排名微信公眾號(hào)、網(wǎng)站導(dǎo)航、小程序開(kāi)發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都app開(kāi)發(fā)公司