新聞中心
BDE(Borland Database Engine)是Borland公司推出的一個(gè)數(shù)據(jù)庫(kù)訪問(wèn)框架,用于在不同的編程語(yǔ)言和不同的平臺(tái)問(wèn)不同的數(shù)據(jù)庫(kù)。BDE支持多種數(shù)據(jù)庫(kù),其中包括Microsoft SQL Server(簡(jiǎn)稱MS SQL)數(shù)據(jù)庫(kù)。本文將詳細(xì)介紹BDE數(shù)據(jù)庫(kù)MS SQL驅(qū)動(dòng)的相關(guān)知識(shí)。

成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供瓦房店網(wǎng)站建設(shè)、瓦房店做網(wǎng)站、瓦房店網(wǎng)站設(shè)計(jì)、瓦房店網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、瓦房店企業(yè)網(wǎng)站模板建站服務(wù),10年瓦房店做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
1. MS SQL數(shù)據(jù)庫(kù)介紹
Microsoft SQL Server是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),由Microsoft Corporation開(kāi)發(fā),可用于存儲(chǔ)和檢索數(shù)據(jù),也可用于Web、移動(dòng)等應(yīng)用程序中。它支持SQL(結(jié)構(gòu)化查詢語(yǔ)言),是一種用于管理關(guān)系型數(shù)據(jù)庫(kù)的語(yǔ)言。MS SQL使用T-SQL(Transact-SQL)擴(kuò)展SQL語(yǔ)言,可完成更多類型的數(shù)據(jù)操作和事務(wù),具有高度的可擴(kuò)展性、安全性和穩(wěn)定性,常用于中大型應(yīng)用程序的數(shù)據(jù)存儲(chǔ)和管理。
2. BDE數(shù)據(jù)庫(kù)訪問(wèn)介紹
BDE是一套完備的數(shù)據(jù)庫(kù)訪問(wèn)解決方案,它提供了一致的接口,使得可以使用相同的代碼進(jìn)行不同數(shù)據(jù)庫(kù)的訪問(wèn)。它提供的一系列組件可以滿足編程人員的訪問(wèn)需求,其主要組成部分如下:
– BDE引擎:處理數(shù)據(jù)的輸入和輸出,執(zhí)行SQL語(yǔ)句、連接數(shù)據(jù)庫(kù)等。
– 數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序:連接不同類型的數(shù)據(jù)庫(kù),對(duì)不同的數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)操作。
– 數(shù)據(jù)集:用于存儲(chǔ)要操作的數(shù)據(jù),可以進(jìn)行數(shù)據(jù)的查詢、修改、添加和刪除等操作。
– TTable:BDE的基本數(shù)據(jù)控件,可以用于對(duì)表和視圖的訪問(wèn)。
– TQuery:用于查詢數(shù)據(jù)的高級(jí)控件,可以聯(lián)合多個(gè)表進(jìn)行復(fù)雜查詢。
3. BDE連接MS SQL數(shù)據(jù)庫(kù)
BDE可以連接多種數(shù)據(jù)庫(kù),其中包括MS SQL。連接步驟如下:
– 安裝BDE:首先需要安裝BDE,可以通過(guò)Borland公司的網(wǎng)站進(jìn)行下載,也可以隨同帶有BDE支持的應(yīng)用程序一同安裝。
– 安裝MS SQL驅(qū)動(dòng):安裝好BDE之后,還需要安裝支持MS SQL數(shù)據(jù)庫(kù)的驅(qū)動(dòng)程序,可以通過(guò)BDE管理員進(jìn)行安裝。在安裝中,需要設(shè)置代表MS SQL的別名,例如 “MS_SQL_Demo”。
– 配置BDE管理員:通過(guò)BDE管理員,需要對(duì)連接的數(shù)據(jù)庫(kù)進(jìn)行一些參數(shù)的配置,例如數(shù)據(jù)庫(kù)名稱、用戶名稱、密碼、主機(jī)名稱等。對(duì)于MS SQL數(shù)據(jù)庫(kù),需要對(duì)TCP/IP協(xié)議進(jìn)行一些配置,例如設(shè)置網(wǎng)絡(luò)地址和端口等。
– 連接數(shù)據(jù)庫(kù):使用BDE提供的組件進(jìn)行數(shù)據(jù)庫(kù)的連接,可以使用TDatabase和TSession等組件創(chuàng)建連接對(duì)象,也可以使用TQuery組件直接連接數(shù)據(jù)庫(kù)執(zhí)行SQL語(yǔ)句。
4. MS SQL驅(qū)動(dòng)常用API介紹
BDE為MS SQL數(shù)據(jù)庫(kù)提供了一些常用的API,可以方便地對(duì)數(shù)據(jù)進(jìn)行操作。以下是一些常用的API介紹:
– DBISQLPutRecord:向數(shù)據(jù)庫(kù)中添加一條記錄,函數(shù)原型為DBISQLPutRecord(Handle: HDBICur; pRecBuf: Pointer): DBIResult;可以將指定的數(shù)據(jù)記錄添加到當(dāng)前打開(kāi)表中,返回值表示操作是否成功。
– DBISQLGetField:從數(shù)據(jù)庫(kù)中讀取一條記錄的某個(gè)字段值,函數(shù)原型為DBISQLGetField(Handle: HDBICur; iField: Longint; pData: Pointer; iBufLen: Longint; piLen: PLongint; piMore: PLongint): DBIResult;可以讀取指定字段的值,返回值表示操作是否成功。
– DbiOpenTable:打開(kāi)一個(gè)表,函數(shù)原型為DbiOpenTable(psession: PDBISession; szTableName: PChar; szTableType: PChar; pszDriverType: PChar; iIndexCount: Integer; pIndexDescs: pIDXDesc; bExclusive: BoolExcl; bReadOnly: BoolRO; bUseCursor: BoolCursor; pParams: Pointer; iOptParams: Integer; phCursor: PHDBICur): DBIResult;可以打開(kāi)指定的表,返回值表示操作是否成功。
– DbiGetErrorString:獲取最后一個(gè)錯(cuò)誤信息,函數(shù)原型為DbiGetErrorString(iErrCode: DBIResult; szBuf: PChar; iBufLen: Integer): DBIResult;可以獲取最后一個(gè)操作的錯(cuò)誤信息,返回值表示是否獲取成功。
5. MS SQL驅(qū)動(dòng)常見(jiàn)問(wèn)題解答
在使用BDE連接MS SQL數(shù)據(jù)庫(kù)時(shí),可能會(huì)遇到一些問(wèn)題,以下是一些常見(jiàn)問(wèn)題的解答:
– 無(wú)法連接數(shù)據(jù)庫(kù):Connect Fled,可能是沒(méi)有正確設(shè)置數(shù)據(jù)庫(kù)的網(wǎng)絡(luò)地址和端口,或者數(shù)據(jù)庫(kù)用戶名和密碼不正確等。
– 無(wú)法打開(kāi)表:Table Open Fled,可能是數(shù)據(jù)表不存在,或者沒(méi)有足夠的權(quán)限等。
– 無(wú)法讀取數(shù)據(jù):Cursor Get Record Fled,可能是字段名稱不正確,或者數(shù)據(jù)類型不匹配等。
– 無(wú)法寫入數(shù)據(jù):Cursor Insert Fled,可能是數(shù)據(jù)類型不匹配,或者數(shù)據(jù)項(xiàng)已經(jīng)存在等。
以上是一些常見(jiàn)的問(wèn)題解答,如果還遇到其他問(wèn)題,可以查看BDE的官方手冊(cè)或者Borland論壇等資源。
本文詳細(xì)介紹了BDE數(shù)據(jù)庫(kù)MS SQL驅(qū)動(dòng)的相關(guān)知識(shí),包括MS SQL數(shù)據(jù)庫(kù)的介紹、BDE的數(shù)據(jù)庫(kù)訪問(wèn)介紹、BDE連接MS SQL數(shù)據(jù)庫(kù)的步驟、MS SQL驅(qū)動(dòng)常用API介紹以及MS SQL驅(qū)動(dòng)常見(jiàn)問(wèn)題解答。掌握這些知識(shí)可以更好地使用BDE連接MS SQL數(shù)據(jù)庫(kù),并處理相應(yīng)的數(shù)據(jù)操作需求。
相關(guān)問(wèn)題拓展閱讀:
- 2. 與數(shù)據(jù)庫(kù)相關(guān)的組件主要有哪些?簡(jiǎn)述這些組件的屬性和方法以及它們的使用方法。
2. 與數(shù)據(jù)庫(kù)相關(guān)的組件主要有哪些?簡(jiǎn)述這些組件的屬性和方法以及它們的使用方法。
1 Session組件。它提供應(yīng)用程序中數(shù)據(jù)庫(kù)的有關(guān)信息,在單機(jī)數(shù)據(jù)庫(kù)編程中不顯式地使用它,這是因?yàn)槊總€(gè)數(shù)據(jù)庫(kù)應(yīng)用程序運(yùn)行時(shí),Delphi將自動(dòng)創(chuàng)建一個(gè)缺省Session組件,用戶可在程序中使用這個(gè)缺省的Session組件,而沒(méi)有必要在設(shè)計(jì)時(shí)設(shè)置一個(gè)Session組件。Table、Query等組件的屬性中有一個(gè)SessionName屬性,缺省為“Default”,這就是缺省的Session組件。比較常用的是用它的GetTableNames方法,在一些查詢有時(shí)需要用戶選擇數(shù)據(jù)庫(kù)中的數(shù)據(jù)表名稱列表。比如在列表框中列出我們的數(shù)據(jù)庫(kù)別名lklb中所有的數(shù)據(jù)表名稱,代碼如下(窗體上要有激活的數(shù)據(jù)集組件并指明了數(shù)據(jù)庫(kù)別名):
procedure TForm1.Button1Click(Sender: TObject);
var MyStringList :TStringList;
begin
MyStringList := TStringList.Create;
try
Session.GetTableNames(‘lklb’, ”,False, False, MyStringList);
ListBox1.Items := MyStringList;
finally
MyStringList.Free;
end;
end;
GetTableNames方法的語(yǔ)法如下,
語(yǔ)法:Session.GetTableNames(DataBaseName,Pattern,Extensions,SystemTables,List)。
參數(shù)說(shuō)明:
DataBaseName——數(shù)據(jù)庫(kù)名稱。
Pattern——數(shù)據(jù)表類型,用來(lái)限制返回哪種類型的數(shù)據(jù)表,比如是.DB還是.DBF,如果為空則返回所有類型數(shù)據(jù)表,可以用通配符。
Extentions——布爾型變量,控制返回的數(shù)據(jù)表是否有擴(kuò)展名。
SystemTables——對(duì)一些數(shù)據(jù)庫(kù)來(lái)說(shuō)有系統(tǒng)數(shù)據(jù)表,若設(shè)定為True則返回的數(shù)據(jù)表名稱包括系統(tǒng)數(shù)據(jù)表。一般設(shè)定為False 。
List—保存數(shù)據(jù)表名稱的字符串列表。
DBNavigator組件。DBNavigator組件主要用于為用戶操作數(shù)據(jù)集中的記錄提供簡(jiǎn)捷的控制按鈕。用戶單擊其中的按鈕就可完成移動(dòng)記錄指針、插入、刪除、修改、保存、刷新記錄等功能。它的 VisibleButtons屬性可指定哪些按鈕顯示,通過(guò)設(shè)置Hints屬性可以為各控制按鈕設(shè)置其他的動(dòng)態(tài)提示信息,用戶自己設(shè)置的動(dòng)態(tài)提示信息會(huì)覆蓋原來(lái)的提示信息,對(duì)我們來(lái)說(shuō)提示信息寫成中文比較好。
DBtext組件。相當(dāng)于標(biāo)簽(Label)組件,只不過(guò)它用于顯示數(shù)據(jù)庫(kù)中的字段值,其顯示內(nèi)容隨記錄指針的變化而變化。它的DataField屬性指定要顯示內(nèi)容的字段名稱。
DBEdit組件。用于顯示、修改數(shù)據(jù)表字段值。由于DBEdit一般用來(lái)修改或添加新記錄使用,所以其ReadOnly屬性一般設(shè)定為False,若設(shè)定為True則不可修改字段內(nèi)容。
DBMemo組件。主要用于顯示和編輯數(shù)據(jù)庫(kù)表中的大二進(jìn)制(BLOB)類型的字段值,一般用來(lái)處理備注型字段的值,能夠顯示多行文本。MaxLength屬性設(shè)置該屬性的值用于限制用戶向DBMemo 組件中輸入字符的個(gè)數(shù)。若設(shè)置該值為0時(shí),表示輸入字符的個(gè)數(shù)沒(méi)有限制。注意:在運(yùn)行過(guò)程中,用戶對(duì)DBMemo組件中顯示的文本信息是不能夠進(jìn)行剪切、拷貝和粘貼操作的。由于DBMemo組件中包含著大量的文本信息,當(dāng)指針移動(dòng)時(shí)要更新顯示其中的信息需要花費(fèi)很多的時(shí)間,用戶可以通過(guò)AutoDisplay屬性來(lái)控制是否自動(dòng)顯示表中的備注型字段。當(dāng)AutoDisplay設(shè)置為False時(shí),在DBMemo組件中只顯示其對(duì)應(yīng)表中的字段名而不顯示字段中的文本信息,用戶如果想瀏覽字段中的文本信息,用鼠標(biāo)左鍵雙擊DBMemo組件的內(nèi)部即可;當(dāng)設(shè)置AutoDisplay屬性為True時(shí),在DBMemo組件中會(huì)自動(dòng)地顯示其對(duì)應(yīng)數(shù)據(jù)庫(kù)表中的字段值。
DBImage組件。與DBMemo組件類似,它是用來(lái)顯示和編輯數(shù)據(jù)庫(kù)表中的BLOB類型的位圖圖像字段的。DBImage的ReadOnly屬性值若設(shè)定為False,就允許用戶對(duì)位圖圖像進(jìn)行編輯,如將圖像剪切或拷貝到剪帖板上或從剪帖板上粘帖到DBImage組件中等操作。
7 DBListBox組件。用來(lái)當(dāng)用戶修改字段值時(shí)顯示一個(gè)字段值列表供用戶選擇。在運(yùn)行過(guò)程中,用戶單擊其中的可選項(xiàng)可以為DBListBox 組件對(duì)應(yīng)的字段賦值,用戶不能自己從鍵盤上輸入一個(gè)列表框中不存在的字段值。
8 DBComboBox組件??梢哉J(rèn)為它是DBEdit組件和DBListBox組件的合成,DBComboBox的可選項(xiàng)也是在設(shè)計(jì)階段由程序設(shè)計(jì)人員設(shè)計(jì)的。當(dāng)用戶修改當(dāng)前記錄中的字段時(shí),可以直接輸入新的字段,也可以打開(kāi)下拉式列表框選擇其中的一個(gè)可選項(xiàng)(受Style屬性的限制)。Sorted屬性決定列表框中的可選項(xiàng)是否按字母的排列順序排序。 技巧:DBComboBox組件和ComboBox組件有類似的智能查找功能:當(dāng)用戶在編輯框中輸入一個(gè)字符或漢字后,打開(kāi)下拉框,會(huì)自動(dòng)移到與之一個(gè)字符相同的選項(xiàng)處,依次下去,用戶一般只需輸入少量的幾個(gè)字符就可以找到相應(yīng)的選項(xiàng)。這在選項(xiàng)比較多的情況下非常有用。當(dāng)然,Sorted屬性必須設(shè)定為True,否則可能會(huì)找不到所需的選項(xiàng)。
DBLookupListBox組件。該組件提供多個(gè)可選項(xiàng),但這多個(gè)可選項(xiàng)是從相關(guān)的其它數(shù)據(jù)庫(kù)表中讀取的,不是設(shè)計(jì)時(shí)手工輸入的,這是其特點(diǎn)。ListSource屬性指明DBLookupListBox組件列表選項(xiàng)的數(shù)據(jù)源,這是非常重要的,否則DBLookupListBox組件不知道從何處去獲取數(shù)據(jù)充填列表框。 一般放置DataSource組件和其相連。ListField屬性指定要充填列表框的數(shù)據(jù)字段,可以一次列出多個(gè)字段的內(nèi)容,但只能選擇一個(gè)字段的內(nèi)容去給和DBLookupListBox組件指定的字段賦值,所以必須指定關(guān)鍵字段KeyField。 KeyField屬性 和ListField屬性相配合使用,指明選擇列表中的哪個(gè)字段內(nèi)容為DBLookupListBox組件指定的字段(DataField屬性指定)賦值,如果列表中只有一個(gè)字段,那么KeyField和ListField應(yīng)相同。KeyField 屬性必須指定,此屬性允許一次設(shè)定多個(gè)字段,每個(gè)字段之間用分號(hào)隔開(kāi)即可。使用多個(gè)列表字段的好處在于,用戶在選擇KEY字段內(nèi)容的同時(shí),可以了解有關(guān)的其他信息。
DBLookupComboBox組件。此組件結(jié)合了DBEdit組件和DBLookupListBox組件的功能,用戶可以直接向該組件中輸入字段值,也可以從下拉式列表框中選擇一個(gè)可選項(xiàng),只是下拉式列表框中的可選項(xiàng)是從相關(guān)的其他數(shù)據(jù)庫(kù)表中讀取來(lái)的。其屬性設(shè)置可參考前面的DBComboBox和DBLookupListBox組件。
注意:上面的四個(gè)組件DBListBox、DBLookupListBox 、DBComboBox、DBLookupComboBox只能與Table組件配合使用,而不能與Query組件配合使用。
11 DBCheckBox組件。一般用來(lái)和數(shù)據(jù)表中布爾型字段相連。這樣一來(lái)用戶就不必要再輸入True/False了,用起來(lái)比較方便。它和CheckBox組件的區(qū)別在于:DBCheckBox組件必須和數(shù)據(jù)表中的布爾型字段相連,而CheckBox的數(shù)值在程序中給出。
12 DBRadioGroup組件。和某個(gè)字段相連,此字段值只能為DBRadioGroup組件的固定數(shù)值之一(由用戶選擇),用戶只能選擇一個(gè)選項(xiàng)。其Items屬性雙擊可打開(kāi)選項(xiàng)名稱編輯器,在這里輸入選項(xiàng)的標(biāo)題。&#118alues屬性雙擊打開(kāi)選項(xiàng)對(duì)應(yīng)的數(shù)據(jù)編輯器,這里輸入的數(shù)據(jù)和前面的Items對(duì)應(yīng),當(dāng)用戶選擇之一個(gè)選項(xiàng)時(shí),就會(huì)從&#118alues列表選擇之一個(gè)數(shù)據(jù)充填到相應(yīng)的字段。注意:如果沒(méi)有給出&#118alues屬性,那么Items標(biāo)題就作為數(shù)據(jù)傳遞給相應(yīng)的字段。
13 DBRichEdit組件。和DBEdit組件是一樣的,只不過(guò)它連接的字段必須是RichText文本格式。DBRichEdit組件沒(méi)有提供對(duì)RichText文本的格式化功能,要想修改文本格式應(yīng)用程序必須自己來(lái)做。當(dāng)文本格式變化而不是文本本身改變時(shí),應(yīng)用程序必須明確地將數(shù)據(jù)源控件的Edit屬性置為True,否則無(wú)法保存變化后的結(jié)果。
14 DBCtrlGrid組件。是很有趣的一個(gè)組件,它允許同時(shí)開(kāi)多個(gè)面板窗口對(duì)記錄進(jìn)行顯示、修改,而且這些記錄是不相同的,是連續(xù)的幾個(gè)記錄(用戶設(shè)定),用戶可同時(shí)對(duì)多個(gè)記錄進(jìn)行修改。ColCount屬性指定有幾列,RowCount屬性指定有幾行。Orientation屬性有兩個(gè)值供選擇: GoHorizontal—滾動(dòng)條出現(xiàn)在水平方向,GoVertical—滾動(dòng)條出現(xiàn)在垂直方向。使用用方法:放置一個(gè)DBCtrlGrid組件后,在其“活動(dòng)”面板(即圖中表面光滑沒(méi)有條紋的左上角面板)中放置數(shù)據(jù)瀏覽組件如DBEdit等。只能在活動(dòng)面板上放組件,其它面板無(wú)法放置,運(yùn)行后每個(gè)面板上都會(huì)有和活動(dòng)面板相同的界面。再通過(guò)ColCount、RowCount來(lái)設(shè)定面板的行列數(shù),用Orientation屬性設(shè)定好滾動(dòng)條的位置就可以使用了。注意:在滾動(dòng)條移動(dòng)時(shí)或在面板之間轉(zhuǎn)移焦點(diǎn)時(shí)都會(huì)自動(dòng)保存數(shù)據(jù)。滾動(dòng)條兩端的箭頭每按一次和在滑塊與箭頭之間的空白處單擊鼠標(biāo)移動(dòng)的記錄數(shù)是不一樣的。前者移動(dòng)一列或一行,后者移動(dòng)一個(gè)屏幕的記錄數(shù)。
15 DBChart組件。和Chart組件幾乎完全一樣,只不過(guò)是多了一個(gè)功能,就是從數(shù)據(jù)表中獲得數(shù)據(jù)來(lái)制做圖形。使用方法:在界面中放置數(shù)據(jù)集、數(shù)據(jù)源組件后,放置DBChart組件,雙擊打開(kāi)設(shè)定界面,和Chart組件不同之處在于在Series選項(xiàng)下,DataSource選項(xiàng)下拉列表中有一項(xiàng)為DataSet,選中后下面會(huì)出現(xiàn)數(shù)據(jù)表選擇項(xiàng),然后在Lables、X、Y中可選擇相應(yīng)的數(shù)字字段用來(lái)做圖。
技巧之一:在DBGrid 中實(shí)現(xiàn)類DBComboBox列表方法
要實(shí)現(xiàn)的功能:在DBGrid網(wǎng)格中輸入字段時(shí),單擊字段可出現(xiàn)一個(gè)下拉列表(類似于DBComboBox),用戶可從中選擇需要的字段內(nèi)容,列表框中是固定的幾個(gè)選項(xiàng)如男、女等。
實(shí)現(xiàn)方法舉例:假如數(shù)據(jù)表中有一個(gè)“性別”字段,我們讓這個(gè)字段具有下拉列表功能。在窗體上放置Table、DataSource、DBGrid組件各一個(gè),將三者搭配起來(lái),不用多講吧。 雙擊DBGrid1, 在彈出的Editing DBGrid1.Columns窗口中,單擊Add all Fields 按鈕, 將Table1的所有字段添加到DBGrid1中。在Editing DBGrid1.Columns窗口,單擊選擇一個(gè)字段如“性別” ,在Object Inspector窗口中, 單擊PickList屬性后的省略號(hào),在Strings list editor窗口中輸入兩行,分別為“男”、“女” ,關(guān)閉Strings list editor窗口。 將Table1的Active屬性設(shè)定為True,然后運(yùn)行程序,鼠標(biāo)單擊DBGrid1中某個(gè)記錄的性別字段,將會(huì)出現(xiàn)一個(gè)下拉列表,列表中選項(xiàng)為“男”、“女”,從中選擇一個(gè)就可以了,也可以手工輸入字段內(nèi)容
技巧之二、在DBGrid 中實(shí)現(xiàn)類DBLookUpComboBox列表的方法。
技巧一中的方法適用于選項(xiàng)比較少的字段的表格輸入,如果有上千種商品名稱,手工輸入顯然是不合適的,這時(shí)我們使用查找字段來(lái)實(shí)現(xiàn)。下拉列表的內(nèi)容來(lái)自另外一個(gè)數(shù)據(jù)表的相應(yīng)字段值,比如來(lái)自事先制做好的商品名稱數(shù)據(jù)表。
以SQL為例BDE(Borland Databas Engine), 是中最古老的技術(shù),從 2.0加入BDE 技術(shù)以后,一直是處理數(shù)據(jù)庫(kù)的事實(shí)上的標(biāo)準(zhǔn)。BDE 是一個(gè)基于驅(qū)動(dòng)程序的體系結(jié)構(gòu),每一種數(shù)據(jù)格式或數(shù)據(jù)源都有一種驅(qū)動(dòng)程序來(lái)驅(qū)動(dòng)相近的數(shù)據(jù)源。BDE 可以很好的支持現(xiàn)在更流行的ODBC API方法,ODBC是一種C/C++ 應(yīng)用程序編程接口(API ),無(wú)論是對(duì)任何一種客戶/ 服務(wù)器關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS ),還是更流行索引順序訪問(wèn)方法(ISAM)數(shù)據(jù)庫(kù)(Jet、Foxpro), 都能很好的訪問(wèn)。
同時(shí),由于BDE 的驅(qū)動(dòng)程序主要直接來(lái)自于第三方開(kāi)發(fā)商,所以,對(duì)于像Oracle這些非微軟的數(shù)據(jù)庫(kù),執(zhí)行效率上比較高。正是這些特點(diǎn),使BDE 技術(shù)還是得到了很多數(shù)據(jù)庫(kù)開(kāi)發(fā)程序員的歡迎。
ADO 技術(shù)是微軟提出來(lái)的處理關(guān)系型數(shù)據(jù)庫(kù)和非關(guān)系型數(shù)據(jù)庫(kù)的新技術(shù),它基于微軟被稱為OLE DB的數(shù)據(jù)訪問(wèn)模式,它是專門為了給大范圍商業(yè)數(shù)據(jù)源提供訪問(wèn)而設(shè)計(jì)的,包括傳統(tǒng)的關(guān)系型數(shù)據(jù)表、電子郵件系統(tǒng)、圖形格式、Internet資源等。ADO 所需內(nèi)存更少,更適合大流量和大事務(wù)量的網(wǎng)絡(luò)計(jì)算機(jī)系統(tǒng)。
ADO 頂層有三個(gè)對(duì)象:Connection、Command、Recordset。
Connection用以指定數(shù)據(jù)源,建立和數(shù)據(jù)源的連接。
Command 對(duì)象用以對(duì)數(shù)劇源執(zhí)行指定的命令,可以接受SQL 語(yǔ)句,表和存儲(chǔ)過(guò)程的名稱,執(zhí)行SQL 查詢,更新數(shù)據(jù),插入紀(jì)錄等。
Recordset 對(duì)象表示的是來(lái)自表或命令執(zhí)行結(jié)果的記錄全集,操縱來(lái)自提供者的幾乎所有數(shù)據(jù)。
由于ADO 技術(shù)的迅速普及,從 5.0 開(kāi)始,加入了ADO 技術(shù)的模塊,并逐步成為數(shù)據(jù)庫(kù)設(shè)計(jì)的主流。但是,和VB的ADODC 相比,它還是有所不同的,在數(shù)據(jù)綁定上,它更多的吸收了BDE 的特點(diǎn),以做到和原來(lái)的程序兼容,同時(shí),它又可以接受標(biāo)準(zhǔn)ADO 技術(shù)的各種屬
性和方法,在接受這些屬性和方法時(shí),它是和數(shù)據(jù)綁定控件脫離的,當(dāng)然從某種意義上來(lái)說(shuō),這種方案提高了執(zhí)行效率,給設(shè)計(jì)人員以更多的選擇。
dbExpress 是 6.0加入的最新的數(shù)據(jù)庫(kù)模塊,它不使用緩存,可以快速瀏覽大量的數(shù)據(jù),但是,不使用緩存就不能更改,所以它的標(biāo)準(zhǔn)方式是只讀的。它一個(gè)重要的特點(diǎn)是交叉平臺(tái),可以和Linux 數(shù)據(jù)庫(kù)連接,速度相當(dāng)快。
bde數(shù)據(jù)庫(kù)mssql驅(qū)動(dòng)的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于bde數(shù)據(jù)庫(kù)mssql驅(qū)動(dòng),BDE數(shù)據(jù)庫(kù)MS SQL驅(qū)動(dòng)詳解,2. 與數(shù)據(jù)庫(kù)相關(guān)的組件主要有哪些?簡(jiǎn)述這些組件的屬性和方法以及它們的使用方法。的信息別忘了在本站進(jìn)行查找喔。
香港服務(wù)器選創(chuàng)新互聯(lián),2H2G首月10元開(kāi)通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務(wù)提供商,擁有超過(guò)10年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開(kāi)發(fā)經(jīng)驗(yàn)。專業(yè)提供云主機(jī)、虛擬主機(jī)、域名注冊(cè)、VPS主機(jī)、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。
名稱欄目:BDE數(shù)據(jù)庫(kù)MSSQL驅(qū)動(dòng)詳解(bde數(shù)據(jù)庫(kù)mssql驅(qū)動(dòng))
轉(zhuǎn)載來(lái)源:http://fisionsoft.com.cn/article/djecdcg.html


咨詢
建站咨詢
