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

ADO.NET數(shù)據(jù)集工作原理機制分析

開發(fā) 后端
文章這里詳細的介紹了ADO.NET數(shù)據(jù)集工作原理還有通過編碼創(chuàng)建DataSet對象,新建窗體命名為Form5.cs的簡單案例分析。

ADO.NET經(jīng)過長時間的發(fā)展,很多用戶都很了解ADO.NET了,這里我發(fā)表一下個人理解,和大家討論討論。ADO.NET數(shù)據(jù)集工作原理請參見圖所示:

ADO.NET數(shù)據(jù)集工作原理圖
 

ADO.NET數(shù)據(jù)集工作原理圖

所示的過程就是數(shù)據(jù)集DataSet的工作原理。首先,客戶端與數(shù)據(jù)庫服務(wù)器端建立連接。然后,由客戶端應(yīng)用程序向數(shù)據(jù)庫服務(wù)器發(fā)送數(shù)據(jù)請求。數(shù)據(jù)庫服務(wù)器接到數(shù)據(jù)請求后,經(jīng)檢索選擇出符合條件的數(shù)據(jù),發(fā)送給客戶端的數(shù)據(jù)集,這時連接可以斷開。

#T#接下來,數(shù)據(jù)集以數(shù)據(jù)綁定控件或直接引用等形式將數(shù)據(jù)傳遞給客戶端應(yīng)用程序。如果客戶端應(yīng)用程序在運行過程中有數(shù)據(jù)發(fā)生變化,它會修改數(shù)據(jù)集里的數(shù)據(jù)。當應(yīng)用程序運行到某一階段時,比如應(yīng)用程序需要保存數(shù)據(jù),就可以再次建立客戶端到數(shù)據(jù)庫服務(wù)器端的連接,將數(shù)據(jù)集里的被修改數(shù)據(jù)提交給服務(wù)器,最后再次斷開連接。

把這種不需要實時連接數(shù)據(jù)庫的工作過程叫做面向非連接的數(shù)據(jù)訪問。在DataSet對象中處理數(shù)據(jù)時,客戶端應(yīng)用程序僅僅是在本地機器上的內(nèi)存中使用數(shù)據(jù)的副本。這緩解了數(shù)據(jù)庫服務(wù)器和網(wǎng)絡(luò)的壓力,因為只有在首次獲取數(shù)據(jù)和編輯完數(shù)據(jù)并將其回傳到數(shù)據(jù)庫時,才能連接到數(shù)據(jù)庫服務(wù)器。

雖然這種面向非連接的數(shù)據(jù)結(jié)構(gòu)有優(yōu)點,但還是存在問題。當處于斷開環(huán)境時,客戶端應(yīng)用程序并不知道其他客戶端應(yīng)用程序?qū)?shù)據(jù)庫中原數(shù)據(jù)所做的改動。很有可能得到的是過時的信息。

案例學(xué)習(xí):通過編碼創(chuàng)建DataSet對象,新建窗體命名為Form5.cs,雙擊Form5的窗體界面,進入后臺編碼區(qū)域,在其窗體加載初始化事件中鍵入如下代碼:

  1. privatevoidForm5_Load(objectsender,EventArgse)  
  2. {  
  3. //建立SQLServer數(shù)據(jù)庫連接  
  4. stringconnstring="DataSource=(local);InitialCatalog=school;UserID=sa";  
  5. SqlConnectionconnection=newSqlConnection(connstring);  
  6. connection.Open();  
  7. stringsqlstring="select*fromstudent";  
  8. SqlCommandmycom=newSqlCommand(sqlstring,connection);  
  9. SqlDataAdapteradapter=newSqlDataAdapter();  
  10. adapter.SelectCommand=mycom;  
  11. //創(chuàng)建DataSet對象  
  12. DataSetSQLds=newDataSet();  
  13. adapter.Fill(SQLds);//通過SqlDataAdapter對象填充DataSet對象  
  14. //釋放數(shù)據(jù)庫連接資源。要養(yǎng)成了好的編程習(xí)慣,操作完數(shù)據(jù)后記住打掃垃圾!  
  15. connection.Dispose();  
  16. connection.Close();  
  17. connection=null;  


 

責(zé)任編輯:田樹 來源: 博客
相關(guān)推薦

2011-05-20 15:45:52

數(shù)據(jù)集

2009-10-29 10:00:53

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

2009-10-29 10:10:10

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

2009-11-04 13:51:46

ADO.NET性能

2009-11-11 15:09:35

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

2009-12-30 14:59:42

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

2009-12-25 16:36:43

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

2010-01-04 13:47:18

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

2009-10-29 10:20:19

ADO.NET使用

2009-11-13 09:53:47

ADO.NET權(quán)限集

2009-11-03 15:47:10

ADO.NET數(shù)據(jù)異步

2009-12-29 14:41:13

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

2009-11-13 09:45:54

ADO.NET程序集

2009-12-30 15:06:22

ADO.NET分析

2009-11-04 11:02:23

ADO.NET Dat

2009-12-23 17:50:38

ADO.NET Fra

2009-11-04 13:08:29

ADO.NET Dat

2009-12-22 16:16:18

ADO.NET Deb

2009-10-29 11:18:47

ADO.NET SQL

2009-12-30 16:13:52

ADO.NET 2.0
點贊
收藏

51CTO技術(shù)棧公眾號