delphi連接數(shù)據(jù)庫
來源:易賢網(wǎng) 閱讀:773 次 日期:2014-09-05 11:22:05
溫馨提示:易賢網(wǎng)小編為您整理了“delphi連接數(shù)據(jù)庫”,方便廣大網(wǎng)友查閱!

一個程序連接數(shù)據(jù)庫中間就需要有一個數(shù)據(jù)庫連接引擎

筆者在使用Delphi的過程中,共使用過幾種連接方式連接Access,SqlServer,Oracle,IBM UDB,IBM AS/400...

1.BDE

這是使用Delphi最多的一種方式,建立一個BDE別名可以在控制面板中的BDE Administration中添加,不過我習慣在SQL Explorer中建立,因為建立之后直接可以執(zhí)行建表的腳本了。

你可以在SQL Explorer中左邊的別名列表中點擊右鍵,并選擇要連接的數(shù)據(jù)庫種類,并在之后BDE建立的連接參數(shù)中填入必要的信息,注意,當你選擇不同的數(shù)據(jù)庫時,右邊的參數(shù)有少許的不同,這些參數(shù)的不同是由于不同數(shù)據(jù)庫所要求的參數(shù)不同造成的,例如SqlServer需要輸入服務器的名稱,數(shù)據(jù)庫的名稱。

BDE能夠連接我所使用過的所有的數(shù)據(jù)庫,當然有些是通過ODBC來連接的。

在發(fā)布程序時,必須發(fā)布BDE引擎。用InstallShield Express可以很方便的做這件事情

BDE的別名也可以在Delphi程序中動態(tài)的檢查有無并建立之。我通常用TSession組件來Do It。

2.ODBC

這是Ms的產(chǎn)品。

如果你在ODBC中建立了一個DSN連接,那么你的Delphi程序還是需要使用BDE來連接它,但是此時不需要用上一步中的手動建立別名,BDE會將ODBC中的所有別名自動在BDE中建立相同名稱的別名,并且它是刪不掉的,除非你刪掉ODBC的DSN。

這種方式的實際是程序通過BDE,再通過ODBC,才連接到數(shù)據(jù)庫。

在早期使用Aceess時,我通常使用這種方式。因為那時候還沒有ADO。

同樣在使用IBM UDB時,我也用這種方式,因為在使用BDE直接連接時,在SQL Explorer中將不能枚舉數(shù)據(jù)庫中的表,而ODBC可以。

AS/400也可以使用這種方式來連接...

大型關系型數(shù)據(jù)庫都提供ODBC驅動。在建立ODBC源時,都會調用其本身的配置,不同的數(shù)據(jù)庫也是不同的。

ODBC源也可以在程序用代碼寫入注冊表中,來生成一個DSN.

3.ADO

這是ODBC的升級版本,通常也叫做mdac ,我用過的最新版本是2.7,現(xiàn)在應該更高。在使用ms的數(shù)據(jù)庫SqlServer,Access時,推薦使用這個東西,因為他從win98開始就集成在操作系統(tǒng)中,并且以連接字符串的形式提供所有參數(shù),發(fā)布系統(tǒng)時不需要在程序之外做其他的工作。

它也提供包括一些類數(shù)據(jù)庫的連接,例如Excel。

值得一提的是在連接有密碼的Access時,Delphi的Ado向導生成的連接字符傳是有Bug的,其生成的password子項是password='xxx';這個樣子,但是這將不能連接,手動將其改成Jet Oledb password='xxx';(好像是這樣,記不清了).

4.DbExpress

這是Borland提供的最新的數(shù)據(jù)庫引擎,目前提供的驅動有限,我只用它成功測試過IBM UDB,在網(wǎng)上可以找到第3方的連接AS/400的驅動。

它是一個提供單向游標的引擎,Borland稱相對于BDE,具有更高的效率。并且在以后將發(fā)展它,而停止BDE的更新。

通常在使用這種方式時,應該用DataSnap(以前叫Midas)技術來提供雙向游標的應用,并且用TClientDataset的Data,Delta屬性來靈活的序列化Dataset,而實現(xiàn)多層松耦合系統(tǒng)。

5.第3方的驅動

這些我一個都沒在實際 中使用過,通常以組件的形式提供,我所知的如連接Oracle的Odac,連接As/400的Delphi400。。。

最后現(xiàn)在如果可能,應盡量使用ADO來連接系統(tǒng),并且用DataSnap來操作本地數(shù)據(jù)集來實現(xiàn)多層系統(tǒng)。

更多信息請查看IT技術專欄

更多信息請查看網(wǎng)絡編程
易賢網(wǎng)手機網(wǎng)站地址:delphi連接數(shù)據(jù)庫

2025國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網(wǎng)