闡述ADO.NET類文件作用
ADO.NET類是一個(gè)連接或斷開的記錄集合,對(duì)于我們掌握怎樣正確創(chuàng)建ADO.NET類工程是很有幫助的,而且也可從中學(xué)到不少編程技巧,例如委托和模板方法。希望大家一起研究下。
Recordset和數(shù)據(jù)的提供者有關(guān):有些數(shù)據(jù)提供者不支持一些recordset的方法和特性。相反,ADO.NET類的不同方法例如查詢、排序、篩選和更新等等,都是獨(dú)立于數(shù)據(jù)提供者的。
當(dāng)新版本的ADO允許recordset被保存或轉(zhuǎn)換到XML以至于數(shù)據(jù)能被傳遞到應(yīng)用程序里和越過防火墻,ADO.NET類則不需要轉(zhuǎn)換就能完成相同的任務(wù),因?yàn)镈ataSet在XML中被聲明過。Recordset是非類型的,意思是它把每個(gè)數(shù)據(jù)作為variant變量來存儲(chǔ)。然而,DataSet是強(qiáng)類型的,它把數(shù)據(jù)按照原來的類型存儲(chǔ)。強(qiáng)類型意味著更規(guī)范的編程方式和減少錯(cuò)誤。
通過ADO的recordset來更新數(shù)據(jù)庫是繁瑣的、低效率的和低成功率的。舉個(gè)例子,如果有五十個(gè)記錄要被更新,還有一個(gè)記錄不能被更新,數(shù)據(jù)庫將拒絕整個(gè)recordset。這個(gè)問題在DataSet中就不存在,因?yàn)镈ataSet能通過它的rowerror特性來一行一行的捕捉錯(cuò)誤。除了數(shù)據(jù),DataSet也能被增加或修改其關(guān)系、列、表和類似對(duì)象,而且不需要多重的數(shù)據(jù)庫連接。#t#
最后,在recordset中,通常用循環(huán)的辦法來取出數(shù)據(jù)。在DataSet中,數(shù)據(jù)視圖被創(chuàng)建并綁定到服務(wù)器控件上,因此,可以不需要混合表示和數(shù)據(jù)存取代碼就能表示數(shù)據(jù)。這是很簡潔的編程方式。
總之,DataSet和recordset是完全不相同的。DataSet可以理解為是一種升級(jí)的recordset。在沒有對(duì)ADO.NET類的DataSet和ADO的recordset進(jìn)行性能上的測(cè)試和比較時(shí),綜上所述,DataSet應(yīng)該是比較有效的。
導(dǎo) 讀:在ADO中我們最常使用的對(duì)象就ADO.NET類了,而在ADO.NET類中又增加了一個(gè)對(duì)象DataSet。本文簡要的對(duì)比了DateSet和Recordset的異同,這對(duì)ADO.NET的初學(xué)者非常有幫助!