大概說明ADO.NET功能簡(jiǎn)介
首先,我認(rèn)為ADO.NET是一個(gè)很有用的組件,如果繼續(xù)得到改進(jìn)和增強(qiáng),我想該插件會(huì)被更多開發(fā)者使用。對(duì)于ADO.NET功能的學(xué)習(xí),對(duì)于我們掌握怎樣正確創(chuàng)建ADO.NET是很有幫助的,而且也可從中學(xué)到不少編程技巧,例如委托和模板方法。希望大家一起研究下
我們就可以在執(zhí)行Execute 方法時(shí)傳入一個(gè)DataReader 型態(tài)的變量來接收。ADO.NET功能很單純的一次只讀取一筆紀(jì)錄,而且只能只讀,所以效率很好而且可以降低網(wǎng)絡(luò)負(fù)載。由于Command對(duì)象自動(dòng)會(huì)產(chǎn)生DataReader 對(duì)象,所以我們只要宣告一個(gè)指到DataReader 對(duì)象的變量來接收即可,并不需要使用New 運(yùn)算子來產(chǎn)生;另外要注意的是 DataReader 對(duì)象只能配合ADO.NET功能使用 ,而且DataReader 對(duì)象在操作的時(shí)候Connection 對(duì)象是保持聯(lián)機(jī)的狀態(tài)。
下列程序代碼片段傳回可以讀取Members 數(shù)據(jù)表中所有的紀(jì)錄的DataReader 對(duì)象:
- Dim cmA As ADOCommand= New ADOCommand("命令字符串","
- Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=C:\Inetpub\wwwroot\cr\ch05\MyWeb.mdb")
- Dim drA as ADODataReader cmA.ActiveConnection.Open() cmA.CommandText="Select * From Members" cmA.Execute(drA)
上述程序代碼片段利用Read 方法將數(shù)據(jù)取回后,再利用Item 集合以鍵值(Key)的方式取出 UserId 字段的數(shù)據(jù),以及利用索引值(Index)取得使用者UserPwd 字段的數(shù)據(jù);索引值是由0 開始計(jì)數(shù),故***個(gè)字段的索引值為0,依此類推。#t#
當(dāng)數(shù)據(jù)讀取完畢后Read 方法會(huì)傳回False, 所以就跳出循環(huán)。 GetValue 方法我們也可以使用GetValue 方法取得指定字段內(nèi)的記錄,ADO.NET功能這個(gè)方法和Item 屬性很像;不過 GetValue 方法的參數(shù)只接收索引值,并不接收鍵值為參數(shù)。
在ADO中,以上所有這些方式與不同類型的游標(biāo)相對(duì)應(yīng) .在文中,你將會(huì)發(fā)現(xiàn),ADO.NET功能雖然與ADO不同,但它具備了ADO的所有功能.相對(duì)照來說,你的代碼將從實(shí)際的數(shù)據(jù)源及其物理存儲(chǔ)媒介和格式中抽取數(shù)據(jù)。