国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

ADO簡介

2019-11-18 17:46:26
字體:
來源:轉載
供稿:網友
簡介
ActiveXDataObjects(ADO)是微軟最新的數據訪問技術。它被設計用來同新的數據訪問層OLEDBPRovider一起協同工作,以提供通用數據訪問(UniversalDataaccess)。OLEDB是一個低層的數據訪問接口,用它可以訪問各種數據源,包括傳統的關系型數據庫,以及電子郵件系統及自定義的商業對象。
ADO向我們提供了一個熟悉的,高層的對OLEDB的Automation封裝接口。對那些熟悉RDO的程序員來說,你可以把OLEDB比作是ODBC驅動程序。如同RDO對象是ODBC驅動程序接口一樣,ADO對象是OLEDB的接口;如同不同的數據庫系統需要它們自己的ODBC驅動程序一樣,不同的數據源要求它們自己的OLEDB提供者(OLEDBprovider)。目前,雖然OLEDB提供者比較少,但微軟正積極推廣該技術,并打算用OLEDB取代ODBC。

ADO向VB程序員提供了很多好處。包括易于使用,熟悉的界面,高速度以及較低的內存占用(已實現ADO2.0的Msado15.dll需要占用342K內存,比RDO的Msrdo20.dll的368K略小,大約是DAO3.5的Dao350.dll所占內存的60%)。同傳統的數據對象層次(DAO和RDO)不同,ADO可以獨立創建。因此你可以只創建一個"Connection"對象,但是可以有多個,獨立的"Recordset"對象來使用它。ADO針對客戶/服務器以及WEB應用程序作了優化。

本文的目的是帶你進入ADO廣闊的世界并開始使用它。

在哪里能得到ADO?
目前ADO1.5版已經可以從微軟網站免費下載。到目前為止,微軟網站仍是你獲取有關ADO最新信息的最佳場所。ADO1.5是作為OLEDBSDK的一部分提供的。你可以從下面這個網址下載:
http://www.microsoft.com/data/oledb/download.htm

在下載之前請先確認OLEDBSDK提供的各項特性。下載文件大約有15M,如果完全安裝的話要占用80M的硬盤空間。如果你只對ADO感舉趣,就選擇最小安裝,這樣只會占用你15M的硬盤空間。關于ADO的網頁在:

http://www.microsoft.com/data/ado/adoinfo.htm.

在這里你可以找到許多關于ADO的示例代碼和文章,尤其是在"Workshop"系列的文章中。你也可以從本站下載ADO2.5的幫助文件。

盡管OLEDBSDK提供自己的ADO幫助文件,你會發現ADO1.0的幫助文件更易于使用。同時它還向你提供ADO對象模型的圖示

ADO是如何組織起來的?
以前的對象模型,如DAO和RDO是層次型的。也就是說一個較低的數據對象如Recordset是幾個較高層次的對象,如Environment和QueryDef,的子對象。在創建一個QueryDef對象的實例之前,你不能創建DAORecordset對象的實例。但ADO卻不同,它定義了一組平面型頂級對象.
最重要的三個ADO對象是Connection,Recordset和Command.本文將主要介紹Connection和Recordset這兩個對象。每個Connection的屬性定義了與數據源的連接。Recordset對象接收來自數據源的數據。Recordset可以與Connection一起起使用,先建立一個連接,然后獲取數據。盡管如此,Recordset也可以被單獨創建,其Connection參數可以在Open屬性定義。

如何使用ADO?
一旦安裝了ADO,在VB的工程->引用對話框中你就可以看到象下圖所示的東西了:


選擇"ActiveXDataObjects1.5Library"(ADODB).在其下的"ADORecordset1.5Library"是一個客戶端的版本(ADOR),它定義了有聚的數據訪問對象。ADOR對于客戶端的數據訪問來說是足夠的了,因為你不需要Connection對象來建立與遠程數據源的聯系。

如果你想要訪問更多的外部數據源,你需要安裝這些外部數據源自己的OLEDBProvider,就象你需要為新的數據庫系統安裝新的ODBC驅動程序一樣。如果該外部數據源沒有自己的OLEDBProvider,你就得使用OLEDBSDK來自己為這個外部數據源創建一個OLEDBProvider了。這已不是本文討論的范圍了。

示例

下面的示例代碼以Northwinds數據庫作為遠程數據源,然后用ADO來訪問它。首先在控制面板中打開“32位數據源”,單擊“添加”按鈕。在彈出的對話框中選擇"MicrosoftAccessDriver(*.mdb)"作為數據源驅動程序。

然后按下圖所示,在對話框中填寫下面的內容



選擇數據庫Northwinds所在路徑。單擊完成,退出ODBC設備管理器。

啟動一個新的VB工程,在窗體的Load事件中輸入下面的代碼:

PrivateSubForm_Load()

DimcnAsADODB.Connection
Setcn=NewADODB.Connection

'SetConnectionproperties
cn.ConnectionString="DSN=RDCNwind;UID=;PWD=;"
cn.ConnectionTimeout=30
cn.Open

Ifcn.State=adStateOpenThen_
MsgBox"ConnectiontoNorthWindSuccessful!"

cn.Close

EndSub
按F5運行程序,看看,一個消息框彈出來告訴你連接成功了。請注意,這里我特別注明了是ADODB.Connection,而不是ADOR.Connection,這樣做是為了將二者區分開(如果你引用了ADODB和ADOR的話,這樣做很有必要)。連接字符串看上去同RDO的連接字符串差不多。事實上,二者確實差不多。
如果我們要訪問一個SQLserver數據庫,你的Connection代碼看上去應象下面所示:

'設置連接屬性cn.Provider="MSDASQL"
cn.ConnectionString="driver={SQLServer};"&"server=prod1;uid=bg;pwd=;database=main"
cn.Open

"Provider"屬性指向SQLServer的OLEDBProvider.
回到我們的示例程序,讓我們創建一個Recordset對象來訪問“Orders”表,并從該表的"Sh
rs.Close

EndSub
上面代碼返回的結果同前例一樣,但是本代碼中的Recordset是獨立的。這一點是DAO和RDO做不到的。Recordset對象的Open方法打開一個代表從SQL查詢返回的記錄的游標。雖然你可以用Connection對象同遠程數據源建立連接,但請記住,在這種情況下,Connection對象和Recordset對象是平行的關系。
總結
本文僅向你介紹了ADO強大的功能的冰山一角。微軟承諾,在將來ADO將會取代DAO和RDO。所以現在你應該考慮如何將你的數據訪問代碼投向ADO的懷抱。這種轉變不會很痛苦,因為ADO的語法同現有的語法差不多。也許微軟或第三方會在將來開發出轉換向導來簡化這一轉換過程。從現在起,你就應開發純ADO代碼的程序。你也可以繼續使用DAO或RDO代碼來開發你的程序,但落伍的感覺總是不好的。->


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 六盘水市| 微博| 宜春市| 福贡县| 黄冈市| 通河县| 柘城县| 华蓥市| 政和县| 左贡县| 比如县| 固阳县| 中方县| 庆城县| 肃宁县| 清远市| 交口县| 当雄县| 读书| 长春市| 枣阳市| 福安市| 赤峰市| 屏山县| 大冶市| 如皋市| 温泉县| 贵港市| 芜湖县| 沙洋县| 陆川县| 福贡县| 新晃| 东宁县| 龙川县| 洛南县| 开平市| 淅川县| 河北省| 河曲县| 宝兴县|