自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

什么是ADO.NET:數(shù)據(jù)源的連接樞紐

開發(fā) 后端
本文介紹什么是ADO.NET。ADO.NET是一組用于和數(shù)據(jù)源進行交互的面向對象類庫,它允許和不同類型的數(shù)據(jù)源以及數(shù)據(jù)庫進行交互。

什么是ADO.NET

ADO.NET是一組用于和數(shù)據(jù)源進行交互的面向對象類庫。通常情況下,數(shù)據(jù)源是數(shù)據(jù)庫,但它同樣也能夠是文本文件、Excel表格或者XML文件。

ADO.NET允許和不同類型的數(shù)據(jù)源以及數(shù)據(jù)庫進行交互。然而并沒有與此相關的一系列類來完成這樣的工作。因為不同的數(shù)據(jù)源采用不同的協(xié)議,所以對于不同的數(shù)據(jù)源必須采用相應的協(xié)議。一些老式的數(shù)據(jù)源使用ODBC協(xié)議,許多新的數(shù)據(jù)源使用OleDb協(xié)議,并且現(xiàn)在還不斷出現(xiàn)更多的數(shù)據(jù)源,這些數(shù)據(jù)源都可以通過.NET的ADO.NET類庫來進行連接。

ADO.NET提供與數(shù)據(jù)源進行交互的相關的公共方法,但是對于不同的數(shù)據(jù)源采用一組不同的類庫。這些類庫稱為Data Providers,并且通常是以與之交互的協(xié)議和數(shù)據(jù)源的類型來命名的。表1列處了一些常見的data providers,以及它們所使用的API前綴,和允許進行交互的數(shù)據(jù)源類型。

什么是ADO.NET:ADO.NET包含的對象

SqlConnection 對象

和數(shù)據(jù)庫交互,你必須連接它。連接幫助指明數(shù)據(jù)庫服務器、數(shù)據(jù)庫名字、用戶名、密碼,和連接數(shù)據(jù)庫所需要的其它參數(shù)。connection對象會被command對象使用,這樣就能夠知道是在哪個數(shù)據(jù)庫上面執(zhí)行命令。
與數(shù)據(jù)庫交互的過程意味著你必須指明想要發(fā)生的操作。這是依靠command對象執(zhí)行的。你使用command對象來發(fā)送SQL語句給數(shù)據(jù)庫。command對象使用connection對象來指出與哪個數(shù)據(jù)庫進行連接。你能夠單獨使用command對象來直接執(zhí)行命令,或者將一個command對象的引用傳遞給SqlDataAdapter,它保存了一組能夠操作下面描述的一組數(shù)據(jù)的命令。

sqlDataReader對象

許多數(shù)據(jù)操作要求你只是讀取一串數(shù)據(jù)。data reader對象允許你獲得從command對象的SELECT語句得到的結果??紤]性能的因素,從data reader返回的數(shù)據(jù)都是快速的且只是“向前”的數(shù)據(jù)流。這意味著你只能按照一定的順序從數(shù)據(jù)流中取出數(shù)據(jù)。這對于速度來說是有好處的,但是如果你需要操作數(shù)據(jù),更好的辦法是使用DataSet。

DataSet對象

DataSet對象是數(shù)據(jù)在內存中的表示形式。它包括多個DataTable對象,而DataTable包含列和行,就象一個普通的數(shù)據(jù)庫中的表。你甚至能夠定義表之間的關系來創(chuàng)建主從關系(parent-child relationships)。DataSet是在特定的場景下使用――幫助管理內存中的數(shù)據(jù)并支持對數(shù)據(jù)的斷開操作的。DataSet是被所有Data Providers使用的對象,因此它并不像Data Provider一樣需要特別的前綴。

SqlDataAdapter對象

某些時候你使用的數(shù)據(jù)主要是只讀的,并且你很少需要將其改變至底層的數(shù)據(jù)源。同樣一些情況要求在內存中緩存數(shù)據(jù),以此來減少并不改變的數(shù)據(jù)被數(shù)據(jù)庫調用的次數(shù)。Data adapter通過斷開模型來幫助你方便的完成對以上情況的處理。當在一單批次的對數(shù)據(jù)庫的讀寫操作的持續(xù)的改變返回至數(shù)據(jù)庫的時候,Data adapter 填充(fill)DataSet對象。data adapter包含對連接對象以及當對數(shù)據(jù)庫進行讀取或者寫入的時候自動的打開或者關閉連接的引用。另外,data adapter包含對數(shù)據(jù)的SELECT,INSERT,UPDATE和DELETE操作的command對象引用。你將為DataSet中的每一個table都定義data adapter,它將為你照顧所有與數(shù)據(jù)庫的連接。所有你將做的工作是告訴data adapter什么時候裝載或者寫入到數(shù)據(jù)庫。

總結:ADO.NET是與數(shù)據(jù)源交互的.NET技術。有許多的Data Providers,它將允許與不同的數(shù)據(jù)源交流――取決于它們所使用的協(xié)議或者數(shù)據(jù)庫。然而無論使用什么樣的Data Provider,你將使用相似的對象與數(shù)據(jù)源進行交互。SqlConnection對象管理與數(shù)據(jù)源的連接。SqlCommand對象允許你與數(shù)據(jù)源交流并發(fā)送命令給它。為了對進行快速的只“向前”地讀取數(shù)據(jù),使用SqlDataReader。如果想使用斷開數(shù)據(jù),使用DataSet并實現(xiàn)能進行讀取或者寫入數(shù)據(jù)源的SqlDataAdapter。

以上便介紹了什么是ADO.NET,以及ADO.NET中包含的對象。

【編輯推薦】

  1. 淺談如何更好的打開和關閉ADO.NET連接池
  2. ADO.NET中SQL Server數(shù)據(jù)庫連接池
  3. ADO.NET中的多數(shù)據(jù)表操作讀取
  4. 淺談ADO.NET中的五個主要對象
  5. 使用LINQ和ADO.NET創(chuàng)建Silverlight程序
責任編輯:yangsai 來源: 網(wǎng)絡轉載
相關推薦

2009-12-23 09:55:23

ADO.NET數(shù)據(jù)源

2009-11-03 14:56:36

ADO.NET數(shù)據(jù)源

2009-11-12 11:29:42

ADO.NET連接數(shù)據(jù)

2009-12-24 16:09:42

ADO.NET數(shù)據(jù)源

2009-12-31 14:23:33

ADO.NET數(shù)據(jù)源

2009-12-29 14:36:55

ADO.NET 數(shù)據(jù)集

2009-12-21 17:02:19

ADO.NET Sql

2009-09-09 10:23:59

ADO.NET連接

2010-01-05 10:01:02

ADO .NET命令

2009-12-22 09:59:06

ADO.NET數(shù)據(jù)庫

2009-11-12 10:53:57

ADO.NET連接My

2011-05-20 13:11:22

ADO.NET

2009-12-30 16:26:12

ADO.NET連接池

2009-11-12 10:45:45

ADO.NET連接測試

2009-11-12 11:38:03

ADO.NET連接事件

2009-12-25 10:25:59

2011-05-20 11:31:07

ADO.NET

2011-03-04 11:08:46

ADO.NET數(shù)據(jù)庫

2009-12-22 13:34:48

ADO.Net Tea

2009-12-24 15:11:47

ADO.NET數(shù)據(jù)庫連
點贊
收藏

51CTO技術棧公眾號