0514-86177077
9:00-17:00(工作日)
1. ADO與ADO.NET簡介ADO與ADO.NET既有相似也有區(qū)別,他們都能夠編寫對數(shù)據(jù)庫服務器中的數(shù)據(jù)進行訪問和操作的應用程序,并且易于使用、高速度、低內(nèi)存支出和占用磁盤空間較少,支持用于建立基于客戶端/服務器和 Web 的應用程序的主要功能。但是ADO使用OLE DB接口并基于微軟的COM技術,而ADO.NET擁有自己的ADO.NET接口并且基于微軟的.NET體系架構(gòu)。眾所周知.NET體系不同于COM體系,ADO.NET接口也就完全不同于ADO和OLE DB接口,這也就是說ADO.NET和ADO是兩種數(shù)據(jù)訪問方式。2. 數(shù)據(jù)訪問方式的歷史下面簡單的回顧一下微軟的數(shù)據(jù)訪問方式所走過的幾個階段。ODBC – (Open Database Connectivity)是第一個使用SQL訪問不同關系數(shù)據(jù)庫的數(shù)據(jù)訪問技術。使用ODBC應用程序能夠通過單一的命令操縱不同的數(shù)據(jù)庫,而開發(fā)人員需要做的僅僅只是針對不同的應用加入相應的ODBC驅(qū)動。 DAO - (Data Access Objects)不像ODBC那樣是面向C/C++程序員的,它是微軟提供給Visual Basic開發(fā)人員的一種簡單的數(shù)據(jù)訪問方法,用于操縱Access數(shù)據(jù)庫。RDO – 在使用DAO訪問不同的關系型數(shù)據(jù)庫的時候,Jet引擎不得不在DAO和ODBC之間進行命令的轉(zhuǎn)化,導致了性能的下降,而RDO(Remote Data Objects)的出現(xiàn)就順理成章了。OLE DB – 隨著越來越多的數(shù)據(jù)以非關系型格式存儲,需要一種新的架構(gòu)來提供這種應用和數(shù)據(jù)源之間的無縫連接,基于COM(Component Object Model)的OLE DB應運而生了。ADO – 基于OLE DB之上的ADO更簡單、更高級、更適合Visual Basic程序員,同時消除了OLE DB的多種弊端,取而代之是微軟技術發(fā)展的趨勢。
ADO架構(gòu)圖表3. ADO與ADO.NET對照在開始設計.NET體系架構(gòu)時,微軟就決定重新設計數(shù)據(jù)訪問模型,以便能夠完全的基于XML和離線計算模型。兩者的區(qū)別主要有:ADO以Recordset存儲,而ADO.NET則以DataSet表示。Recordset看起來更像單表,如果讓Recordset以多表的方式表示就必須在SQL中進行多表連接。反之,DataSet可以是多個表的集合。ADO 的運作是一種在線方式,這意味著不論是瀏覽或更新數(shù)據(jù)都必須是實時的。ADO.NET則使用離線方式,在訪問數(shù)據(jù)的時候ADO.NET會利用XML制作數(shù)據(jù)的一份幅本,ADO.NET的數(shù)據(jù)庫連接也只有在這段時間需要在線。由于ADO使用COM技術,這就要求所使用的數(shù)據(jù)類型必須符合COM規(guī)范,而ADO.NET基于XML格式,數(shù)據(jù)類型更為豐富并且不需要再做COM編排導致的數(shù)據(jù)類型轉(zhuǎn)換,從而提高了整體性能。下面就是以圖表的形式描繪了ADO.NET體系
ADO.NET架構(gòu)圖表4. 小結(jié)ADO.NET為.NET構(gòu)架提供了優(yōu)化的數(shù)據(jù)訪問模型,和基于COM的ADO是完全兩樣的數(shù)據(jù)訪問方式。
標簽:南昌 海南 嘉興 南京 臺州 揚州 淄博 南京
上一篇:ASP.NET主機資源控制的一些心得
下一篇:Asp.Net各種超時問題總結(jié)
Copyright ? 1999-2012 誠信 合法 規(guī)范的巨人網(wǎng)絡通訊始建于2005年
蘇ICP備15040257號-8