IT開發/UI設計/運營/影視特效培訓機構

400-111-8989

熱門課程

ADO.NET:不只是對ADO的升級

  • 發布:IT培訓
  • 來源:IT學習資料
  • 時間:2018-06-29 17:26

從頭開始

經典的ADO和ADO.NET里的一切都是從Connection(連接)對象開始的。Connection對象表示對數據源的唯一物理連接,但是兩者就這么一點相同之處。盡管Connection對象的不同更加復雜(也就是說,連接是如何處理的),但是這些不同點的范圍是很大的。在經典的ADO里,在連接被創建和建立的時候,應用程序能夠按照自己的需要保持這個連接。事實上,應用程序沒有被限制只能建立一個連接;它們可以建立多個連接。但是由于連接是有限的資源,所以這種方法還需要考慮其他一些問題。

ADO.NET對連接采取了不同的方法。連接只被保持足夠長的時間來完成一項操作。一旦這項操作被完成,Recordset就被立即斷開。命令的結果被讀入Dataset,在這里這些結果能夠被處理,即使它們同數據源已經斷開。雖然經典的ADO也能夠進行離線處理,但是ADO是一個極其好的例子,能夠說明有可能同輕易實現之間的差別。

在ADO.NET里,節省連接資源的方法同其處理更新的方法是一樣的。當Dataset發生變化的時候,由于ADO.NET的離線屬性,這些變化不會立即反映到真實的表格上。要讓變化“真正地”發生,你就需要使用DataAdapter對象,它被用來進行填充操作以及從Dataset或者對Dataset進行更新。

ADO.NET的DataAdapter對象有四個方法來從數據源取回數據或者對數據源更新數據。這些方法是:SelectCommand、InsertCommand、UpdateCommand和DeleteCommand。這些方法最好的地方是:一旦知道了名稱,你就它們能夠做什么了。

說再見

在經典的ADO里,Recordset曾是訪問數據的主要方法。它就像執行查詢一樣簡單,使用從一個或者多個表格請求得來的列就能夠創建一個Recordset。在多個行(記錄)被返回的情況下,就要通過使用move、moveNext、movePrevious、moveLast或者moveFirst這些方法來實現導航。當然不是所有這些方法都能使用,因為使用了只能向前的指針(forward-only cursor),所以在這種情況下只能允許使用moveNext、moveLast和move(如果向前移動)。

在ADO.NET里,Recordset已經被取消了,而指針也只留有其概念。它們已經被提供相同功能的數據類所取代。例如,我用過的大多數經典的ADO指針都是只能向前、只讀的,因為我是那些相信最好盡快就能完成輸入輸出的開發人員之一。隨著ADO.NET的出現,由DataReader對象提供了只能向前的、只讀的指針所提供的功能。

新的特性和改進的內容

ADO.NET最可吹噓的特性是其數據訪問的離線方法,這是可以得到證明的。但是這也是受到誤解最多的特性之一。在我當前被分配設計ASP網上商店的時候,在有些會議上,只要.NET一被提到,馬上就會引起激烈的爭論。

為什么會引起激烈的爭論?嗯,Dataset駐留在內存里的觀念曾經被理解為“整個數據庫都被保存在客戶機器的內存里”。消除這種看法需要花上一些時間,但是最終,持這種看法的人都被說服,因為他們了解到ADO.NET和ASP.NET都不會這樣工作,當然,除非要求它們這樣做。

ADO.NET對象駐留內存的性質是其強項。它提供了操控數據的強大能力,在經典ADO里如此操控數據曾經是很困難的,如果不是不可能的話。ADO.NET和XML現在相互進行了集成。對于ADO來說,使用ADO的Recordset來生成XML文檔是相對容易的,但是反過來就沒有那么容易了。要從一個XML文檔生成一個ADO的Recordset需要大量的代碼。但是由于ADO.NET和XML進行了相互集成,因此使用XmlDataDocument就能夠進行相互轉換。

 

預約申請免費試聽課

填寫下面表單即可預約申請免費試聽!怕錢不夠?可就業掙錢后再付學費! 怕學不會?助教全程陪讀,隨時解惑!擔心就業?一地學習,可全國推薦就業!

上一篇:C++語言的布爾類型和枚舉類型
下一篇:C語言圖像處理方法

達內it學習路線?如何學好it?

學編程需要什么基礎嗎?

Python、Java、C++該學哪一個

學編程需要什么基礎嗎

  • 掃碼領取資料

    回復關鍵字:視頻資料

    免費領取 達內課程視頻學習資料

  • 視頻學習QQ群

    添加QQ群:1143617948

    免費領取達內課程視頻學習資料

Copyright ? 2021 Tedu.cn All Rights Reserved 京ICP備08000853號-56 京公網安備 11010802029508號 達內時代科技集團有限公司 版權所有

選擇城市和中心
江西省

貴州省

廣西省

海南省

中出人妻中文字幕无码