求真百科歡迎當事人提供第一手真實資料,洗刷冤屈,終結網路霸凌。

ActiveX Data Objects檢視原始碼討論檢視歷史

事實揭露 揭密真相
前往: 導覽搜尋
ActiveX Data Objects

一種程序對象,用於表示用戶數據庫中的數據結構和所包含的數據。在Microsoft Visual Basic編輯器中,可以使用ADO對象以及ADO的附加組件(稱為Microsoft ADO Extensions for DLL and Security(ADOX))來創建或修改表和查詢、檢驗數據庫、或者訪問外部數據源。還可在代碼中使用ADO來操作數據庫中的數據。

簡介

ADO (ActiveX Data Objects,ActiveX數據對象)是Microsoft提出的應用程序接口(API)用以實現訪問關係或非關係數據庫中的數據。例如,如果您希望編寫應用程序從DB2或Oracle數據庫中向網頁提供數據,可以將ADO程序包括在作為活動服務器頁(ASP)的HTML文件中。當用戶從網站請求網頁時,返回的網頁也包括了數據中的相應數據,這些是由於使用了ADO代碼的結果。像Microsoft的其它系統接口一樣,ADO是面向對象的。它是Microsoft全局數據訪問(UDA)的一部分,Microsoft認為與其自己創建一個數據,不如利用UDA訪問已有的數據庫。為達到這一目的,Microsoft和其它數據庫公司在它們的數據庫和Microsoft的OLE數據庫之間提供了一個「橋」程序,OLE數據庫已經在使用ADO技術。ADO的一個特徵(稱為遠程數據服務)支持網頁中的數據相關的ActiveX控件和有效的客戶端緩衝。作為ActiveX的一部分,ADO也是Microsoft的組件對象模式(COM)的一部分,它的面向組件的框架用以將程序組裝在一起。ADO從原來的Microsoft數據接口遠程數據對象(RDO)而來。RDO與ODBC一起工作訪問關係數據庫,但不能訪問如ISAM和VSAM的非關係數據庫。ADO 是對當前微軟所支持的數據庫進行操作的最有效和最簡單直接的方法,它是一種功能強大的數據訪問編程模式,從而使得大部分數據源可編程的屬性得以直接擴展到你的Active Server 頁面上。可以使用ADO 去編寫緊湊簡明的腳本以便連接到 Open Database Connectivity (ODBC) 兼容的數據庫和 OLE DB 兼容的數據源,這樣 ASP 程序員就可以訪問任何與 ODBC 兼容的數據庫,包括 MS SQL SERVER、Access、 Oracle等等。

評價

比如,如果網站開發人員需要讓用戶通過訪問網頁來獲得存在於IBM DB2或者Oracle數據庫中的數據,那麼就可以在ASP頁面中包含ADO程序,用來連接數據庫。於是,當用戶在網站上瀏覽網頁時,返回的網頁將會包含從數據庫中獲取的數據。而這些數據都是由ADO代碼做到的。 ADO是一種面向對象的編程接口,微軟介紹說,與其同IBM和Oracle提倡的那樣,創建一個統一數據庫,不如提供一個能夠訪問不同數據庫的統一接口,這樣會更加實用一些。為實現這一目標,微軟在數據庫和微軟的OLE DB中提供了一種「橋」程序,這種程序能夠提供對數據庫的連接。 開發人員在使用ADO時,其實就是在使用OLE DB,不過OLE DB更加接近底層。ADO的一項屬性-遠程數據服務,支持「數據倉庫」ActiveX 組件以及高效的客戶端緩存。作為ActiveX的一部分,ADO也是COM組件的一部分。ADO是由早期的微軟數據接口——遠程數據對象RDO演化而來的。RDO同微軟的ODBC一同連接關係數據庫,不過不能連接非關係數據庫。ADO向我們提供了一個熟悉的,高層的對OLE DB的Automation封裝接口。對那些熟悉RDO的程序員來說,你可以把OLE DB比作是ODBC驅動程序。如同RDO對象是ODBC驅動程序接口一樣,ADO對象是OLE DB的接口;如同不同的數據庫系統需要它們自己的ODBC驅動程序一樣,不同的數據源要求它們自己的OLE DB提供者(OLE DB provider)。但微軟正積極推廣該技術,並打算用OLE DB取代ODBC。ADO向VB程序員提供了很多好處。包括易於使用,熟悉的界面,高速度以及較低的內存占用(已實現ADO2.0的Msado15.dll需要占用342K內存,比RDO的Msrdo20.dll的368K略小,大約是DAO3.5的Dao350.dll所占內存的60%)。同傳統的數據對象層次(DAO和RDO)不同,ADO可以獨立創建。因此你可以只創建一個"Connection"對象,但是可以有多個,獨立的"Recordset"對象來使用它。ADO針對客戶/服務器以及WEB應用程序作了優化[1]

參考文獻