使用 ADO Data 控件
ADO Data 控件使用 Microsoft ActiveX 數(shù)據(jù)對象(ADO) 來快速建立數(shù)據(jù)綁定的控件和數(shù)據(jù)提供者之間的連接。數(shù)據(jù)綁定控件是任何具有“數(shù)據(jù)源”屬性的控件。數(shù)據(jù)提供者可以是任何符合 OLE DB 規(guī)范的數(shù)據(jù)源。使用Visual Basic 的類模塊也可以很方便地創(chuàng)建子集的數(shù)據(jù)提供者。
盡管可以在應用程序中直接使用 ActiveX 數(shù)據(jù)對象,但 ADO Data 控件有作為一個圖形控件的優(yōu)勢(具有“向前”和“向后”按鈕),以及一個易于使用的界面,使您可以用最少的代碼創(chuàng)建數(shù)據(jù)庫應用程序。
在 Visual Basic 的“工具箱”中,不少控件都可以作為數(shù)據(jù)綁定的控件,包括復選框、組合框、圖像、標簽、列表框、圖片框以及文本框控件等。此外,Visual Basic 還包括了若干種數(shù)據(jù)綁定的 ActiveX 控件,諸如DataGrid、DataCombo、Chart以及 DataList 控件等。用戶也可以創(chuàng)建自己的數(shù)據(jù)綁定的 ActiveX 控件,或從其他開發(fā)商購買控件。
Visual Basic以前的版本提供了內(nèi)在的 Data 控件和 Remote Data 控件(RDC) 來進行數(shù)據(jù)訪問。這兩種控件仍包括在 Visual Basic 中,以提供向后兼容。不過,因為 ADO 的適應性更廣,因此建議用戶使用 ADO Data 控件來創(chuàng)建新的數(shù)據(jù)庫應用程序。
詳細信息 關于數(shù)據(jù)綁定的控件的完整列表位于“綁定到 ADO Data 控件的控件”中。要了解如何使用這些內(nèi)在的Data 控件或 Remote Data 控件,請參閱“使用 Data 控件”或“使用 Remote Data 控件”。關于創(chuàng)建數(shù)據(jù)提供者的詳細信息,請參閱“創(chuàng)建數(shù)據(jù)識別類”。
可能的用法
連接一個本地數(shù)據(jù)庫或遠程數(shù)據(jù)庫。
打開一個指定的數(shù)據(jù)庫表,或定義一個基于結(jié)構化查詢語言 (SQL) 的查詢、或存儲過程、或該數(shù)據(jù)庫中的表的視圖的記錄集合。
將數(shù)據(jù)字段的數(shù)值傳遞給數(shù)據(jù)綁定的控件,可以在這些控件中顯示或更改這些數(shù)值。
添加新的記錄,或根據(jù)對顯示在綁定的控件中的數(shù)據(jù)的任何更改來更新一個數(shù)據(jù)庫。
要創(chuàng)建一個客戶或前端數(shù)據(jù)庫應用程序,應在窗體中添加 ADO Data 控件,以及其它所需要的任何 Visual Basic 控件??梢愿鶕?jù)您的需要在窗體中放置多個 ADO Data 控件。不過,請注意,這種控件是一種相當“昂貴”的創(chuàng)建連接的方法,應在第一個控件至少有兩個連接,且以后的每個控件至少多一個連接時使用。
用最少的代碼創(chuàng)建一個前端數(shù)據(jù)庫應用程序
通過在設計時設置一些屬性,可以用最少的代碼來創(chuàng)建一個數(shù)據(jù)庫應用程序。如果正在使用OLE DB 數(shù)據(jù)源,則相應的Microsoft 數(shù)據(jù)鏈接名稱(DataLink Name)(.MDL) 必須是在您的機器上創(chuàng)建的。請參閱“創(chuàng)建 Northwind的OLE DB Data Link”,以獲得一個循序漸進的示例。
要創(chuàng)建一個簡單的前端數(shù)據(jù)庫應用程序:
1. 在窗體上放置一個 ADO Data 控件(該圖標的工具提示為 "ADODC")如果該控件不在“工具箱”中,請按 CTRL+T 鍵,顯示“部件”對話框。在這個“部件”對話框中,單擊“Microsoft ADO Data Control”。
2. 在“工具箱”中,單擊選定“ADO Data控件”。然后按 F4 鍵顯示“屬性”窗口。
3. 在“屬性”窗口中,單擊“ConnectionString”顯示“ConnectionString”對話框。
4. 如果您已經(jīng)創(chuàng)建了一個 Microsoft 數(shù)據(jù)鏈接文件(Data Link file)(.MDL),請選擇“使用 OLE DB 文件”并單擊“瀏覽”,以找到計算機上的文件。如果使用 DSN,則單擊“使用 ODBC 數(shù)據(jù)源名”,并從框中選擇一個 DSN,或單擊“新建”創(chuàng)建一個。如果想創(chuàng)建一個連接字符串,請選擇“使用 ConnectionString”,單擊“生成”,然后使用“數(shù)據(jù)鏈接屬性”對話框創(chuàng)建一個連接字符串。在創(chuàng)建連接字符串后,單擊“確定”。ConnectionString 屬性將使用一個類似于下面這一行的字符串來填充:
driver={SQL Server};server=bigsmile;uid=sa;pwd=pwd;database=pubs
5. 在“屬性”窗口中,將“記錄源”屬性設置為一個 SQL 語句。例如:SELECT * FROM Titles WHERE AuthorID = 72在訪問一個表時,應始終包括一個 WHERE 子句。如果這樣做失敗,則會鎖定整個表,這樣對其他用戶將是一個嚴重的障礙。
6. 在窗體上再放置一個“文本框”控件,用來顯示數(shù)據(jù)庫信息。
7. 在其“屬性”窗口中,將 Text1 的“數(shù)據(jù)源”屬性設為 ADO Data 控件的名稱 (ADODC1)。這樣就將這個文本框和 ADO Data 控件綁定在一起。
8. 在其“屬性”窗口中,單擊“數(shù)據(jù)字段”將下拉得到一個可用的字段列表。單擊所要顯示的字段的名稱。
9. 對希望訪問的其它每個字段重復第 6、7、8 步。
10. 按 F5 鍵運行該應用程序。用戶可以在 ADO Data 控件中使用四個箭頭按鈕,從而允許用戶到達數(shù)據(jù)的開始、記錄的末尾或在數(shù)據(jù)內(nèi)從一個記錄移動到另一個記錄。
在程序中設置 ConnectionString、Source、DataSource以及 DataField下面的代碼演示了如何在程序中設置這四個屬性。注意設置 DataSource 屬性要使用 Set 語句。
ADO Data 控件使用 Microsoft ActiveX 數(shù)據(jù)對象(ADO) 來快速建立數(shù)據(jù)綁定的控件和數(shù)據(jù)提供者之間的連接。數(shù)據(jù)綁定控件是任何具有“數(shù)據(jù)源”屬性的控件。數(shù)據(jù)提供者可以是任何符合 OLE DB 規(guī)范的數(shù)據(jù)源。使用Visual Basic 的類模塊也可以很方便地創(chuàng)建子集的數(shù)據(jù)提供者。
盡管可以在應用程序中直接使用 ActiveX 數(shù)據(jù)對象,但 ADO Data 控件有作為一個圖形控件的優(yōu)勢(具有“向前”和“向后”按鈕),以及一個易于使用的界面,使您可以用最少的代碼創(chuàng)建數(shù)據(jù)庫應用程序。
在 Visual Basic 的“工具箱”中,不少控件都可以作為數(shù)據(jù)綁定的控件,包括復選框、組合框、圖像、標簽、列表框、圖片框以及文本框控件等。此外,Visual Basic 還包括了若干種數(shù)據(jù)綁定的 ActiveX 控件,諸如DataGrid、DataCombo、Chart以及 DataList 控件等。用戶也可以創(chuàng)建自己的數(shù)據(jù)綁定的 ActiveX 控件,或從其他開發(fā)商購買控件。
Visual Basic以前的版本提供了內(nèi)在的 Data 控件和 Remote Data 控件(RDC) 來進行數(shù)據(jù)訪問。這兩種控件仍包括在 Visual Basic 中,以提供向后兼容。不過,因為 ADO 的適應性更廣,因此建議用戶使用 ADO Data 控件來創(chuàng)建新的數(shù)據(jù)庫應用程序。
詳細信息 關于數(shù)據(jù)綁定的控件的完整列表位于“綁定到 ADO Data 控件的控件”中。要了解如何使用這些內(nèi)在的Data 控件或 Remote Data 控件,請參閱“使用 Data 控件”或“使用 Remote Data 控件”。關于創(chuàng)建數(shù)據(jù)提供者的詳細信息,請參閱“創(chuàng)建數(shù)據(jù)識別類”。
可能的用法
連接一個本地數(shù)據(jù)庫或遠程數(shù)據(jù)庫。
打開一個指定的數(shù)據(jù)庫表,或定義一個基于結(jié)構化查詢語言 (SQL) 的查詢、或存儲過程、或該數(shù)據(jù)庫中的表的視圖的記錄集合。
將數(shù)據(jù)字段的數(shù)值傳遞給數(shù)據(jù)綁定的控件,可以在這些控件中顯示或更改這些數(shù)值。
添加新的記錄,或根據(jù)對顯示在綁定的控件中的數(shù)據(jù)的任何更改來更新一個數(shù)據(jù)庫。
要創(chuàng)建一個客戶或前端數(shù)據(jù)庫應用程序,應在窗體中添加 ADO Data 控件,以及其它所需要的任何 Visual Basic 控件??梢愿鶕?jù)您的需要在窗體中放置多個 ADO Data 控件。不過,請注意,這種控件是一種相當“昂貴”的創(chuàng)建連接的方法,應在第一個控件至少有兩個連接,且以后的每個控件至少多一個連接時使用。
用最少的代碼創(chuàng)建一個前端數(shù)據(jù)庫應用程序
通過在設計時設置一些屬性,可以用最少的代碼來創(chuàng)建一個數(shù)據(jù)庫應用程序。如果正在使用OLE DB 數(shù)據(jù)源,則相應的Microsoft 數(shù)據(jù)鏈接名稱(DataLink Name)(.MDL) 必須是在您的機器上創(chuàng)建的。請參閱“創(chuàng)建 Northwind的OLE DB Data Link”,以獲得一個循序漸進的示例。
要創(chuàng)建一個簡單的前端數(shù)據(jù)庫應用程序:
1. 在窗體上放置一個 ADO Data 控件(該圖標的工具提示為 "ADODC")如果該控件不在“工具箱”中,請按 CTRL+T 鍵,顯示“部件”對話框。在這個“部件”對話框中,單擊“Microsoft ADO Data Control”。
2. 在“工具箱”中,單擊選定“ADO Data控件”。然后按 F4 鍵顯示“屬性”窗口。
3. 在“屬性”窗口中,單擊“ConnectionString”顯示“ConnectionString”對話框。
4. 如果您已經(jīng)創(chuàng)建了一個 Microsoft 數(shù)據(jù)鏈接文件(Data Link file)(.MDL),請選擇“使用 OLE DB 文件”并單擊“瀏覽”,以找到計算機上的文件。如果使用 DSN,則單擊“使用 ODBC 數(shù)據(jù)源名”,并從框中選擇一個 DSN,或單擊“新建”創(chuàng)建一個。如果想創(chuàng)建一個連接字符串,請選擇“使用 ConnectionString”,單擊“生成”,然后使用“數(shù)據(jù)鏈接屬性”對話框創(chuàng)建一個連接字符串。在創(chuàng)建連接字符串后,單擊“確定”。ConnectionString 屬性將使用一個類似于下面這一行的字符串來填充:
driver={SQL Server};server=bigsmile;uid=sa;pwd=pwd;database=pubs
5. 在“屬性”窗口中,將“記錄源”屬性設置為一個 SQL 語句。例如:SELECT * FROM Titles WHERE AuthorID = 72在訪問一個表時,應始終包括一個 WHERE 子句。如果這樣做失敗,則會鎖定整個表,這樣對其他用戶將是一個嚴重的障礙。
6. 在窗體上再放置一個“文本框”控件,用來顯示數(shù)據(jù)庫信息。
7. 在其“屬性”窗口中,將 Text1 的“數(shù)據(jù)源”屬性設為 ADO Data 控件的名稱 (ADODC1)。這樣就將這個文本框和 ADO Data 控件綁定在一起。
8. 在其“屬性”窗口中,單擊“數(shù)據(jù)字段”將下拉得到一個可用的字段列表。單擊所要顯示的字段的名稱。
9. 對希望訪問的其它每個字段重復第 6、7、8 步。
10. 按 F5 鍵運行該應用程序。用戶可以在 ADO Data 控件中使用四個箭頭按鈕,從而允許用戶到達數(shù)據(jù)的開始、記錄的末尾或在數(shù)據(jù)內(nèi)從一個記錄移動到另一個記錄。
在程序中設置 ConnectionString、Source、DataSource以及 DataField下面的代碼演示了如何在程序中設置這四個屬性。注意設置 DataSource 屬性要使用 Set 語句。

