掃二維碼與項目經(jīng)理溝通
我們在微信上24小時期待你的聲音
解答本文疑問/技術(shù)咨詢/運營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
這篇文章主要介紹ADO Recordset對象的使用技巧和相關(guān)注意事宜,還有重點介紹了在關(guān)系數(shù)據(jù)庫管理系統(tǒng)中訪問數(shù)據(jù)。不管是否已經(jīng)執(zhí)行的是“try”或“catch”塊,所以它變成關(guān)閉reader和conncetion對象的邏輯位置。

泰寧網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)公司,泰寧網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為泰寧1000多家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站建設(shè)要多少錢,請找那個售后服務(wù)好的泰寧做網(wǎng)站的公司定做!
ADO.NET是微軟的Microsoft ActiveX Data Objects (ADO)的下一代產(chǎn)品,是在微軟的.NET中創(chuàng)建分布式和數(shù)據(jù)共享應用程序的應用程序開發(fā)接口(API)。 ADO.NET能被用在任何用戶的應用程序,需要和OLE DB-compliant的數(shù)據(jù)源連接和通訊,例如Microsoft SQL Server。 #t#
同時ADO Recordset對象又保持著與以前的ADO模型有關(guān)的一些主要概念,它已經(jīng)被極大的完善,并從不同的信息來源提供途徑去獲得結(jié)構(gòu)化的數(shù)據(jù)----一個平臺文本文件,從數(shù)據(jù)庫管理系統(tǒng)獲得的相關(guān)數(shù)據(jù),或者是分級的XML數(shù)據(jù)----然而,所有都按照一個相容的,標準化的設(shè)計模型來執(zhí)行。
當你處理大量數(shù)據(jù)的時候,大量內(nèi)存的占用會導致性能上的問題。例如,一個連接(connection)用傳統(tǒng)的ADO Recordset對象去讀1000行數(shù)據(jù)庫的記錄,就必須為這1000行記錄將內(nèi)存分配給這個連接直至這個連接的生命周期結(jié)束。如果有1000用戶在同一時間對同一計算機進行同樣的操作,內(nèi)存被過度的使用就會成為關(guān)鍵性的問題。
為了解決這些問題,.NET框架包括了ADO Recordset對象,而這個對象僅僅從數(shù)據(jù)庫返回一個只讀的,僅向前數(shù)據(jù)流。而且當前內(nèi)存中每次僅存在一條記錄。DataReader接口支持各種數(shù)據(jù)源,比如關(guān)系數(shù)據(jù)和分級數(shù)據(jù)。DataReader可以適用于在運行完一條命令僅需要返回一個簡單的只讀記錄集。
下面的代碼片斷闡述了怎么樣聲明變量指向一個ADO Recordset對象的實例,還包括代碼執(zhí)行時Command對象產(chǎn)生的結(jié)果。當調(diào)用Command對象執(zhí)行方法時,Command對象必須已經(jīng)被創(chuàng)建和作為參數(shù)來傳遞。繼續(xù)上面的例子:
- [C#]
- While (myReader.Read()) {
- [C#]
- While (myReader.Read()) {
- // do your thing with the current row here
- }
- [VB]
- While myReader.Read' do your thing with the current row here
- End While

我們在微信上24小時期待你的聲音
解答本文疑問/技術(shù)咨詢/運營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流