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

深入淺析ADO.NET Select方法

開發(fā) 后端
這里就運用ADO.NET Select方法來運行一個內存中的查詢,或在視圖上設置一個過濾器來濾掉與指定標準不匹配的所有的記錄,你就可以讀取一個DataTable對象中的一個特定的行了。

我們應該怎么運用Find來讀取一個記錄,在網(wǎng)上收集了一些資料,現(xiàn)在我們一起來解決這個問題吧。通過運用ADO.NET Select方法來運行一個內存中的查詢,或在視圖上設置一個過濾器來濾掉與指定標準不匹配的所有的記錄,你就可以讀取一個DataTable對象中的一個特定的行了。你可以通過設置DataView類上的RowFilter屬性來設置一個過濾器。這兩種方法都運用相同的引擎來選擇記錄。它們可以接納一個表達式,對它進行解析并求各個子句的值。

#T#ADO.NET Select方法返回一個帶有所有相匹配的DataRow對象的數(shù)組。RowFilter屬性重建DataView的內部索引來包含所有的(且僅包含)匹配的記錄。然后,應用程序就可以訪問記錄了。這兩種方法在性能上幾乎是一樣的;運用哪種方法取決于環(huán)境和個人喜好。例如,如果你用的是數(shù)據(jù)綁定的控件,如一個DataGrid或DataList,那么RowFilter就很理想。如果你必須處理一串記錄,那么ADO.NET Select方法就更好了。
 

然而,你還可以用另一種方法(仍然是基于DataView的),它是讀取一個表中的記錄的最快的方法。該方法就是用Find:

  1. DimviewAsDataView  
  2. view=NewDataView(table)  
  3. view.Sort="orderid" 
  4. DimindexAsInteger=view.Find(10248)  
  5. DimrowAsDataRow=view(index).Row 


Find方法運用了視圖的當前索引,并將指定的值(或多個值)與形成當前索引的字段匹配起來。在前面的代碼中,值10248與列orderid匹配。如果Sort屬性為空,且DataTable對象有一個主鍵,那么就運用主鍵中的列。Find方法返回的是相匹配的***行的基于0的位置的值。
 
果你想返回多個記錄,可以用FindRows的演變形式:

  1. view.Sort="orderid,discount" 
  2. Dimkeys(1)AsObject  
  3. keys(0)=10248  
  4. keys(1)=0  
  5. DimrowAsDataRow=_ 
  6. view(view.Find(keys)).Row 


前面的代碼可以讓你通過運用Find的重載方法(帶有一組對象)來匹配多個列的值。

 

責任編輯:田樹 來源: CSDN
相關推薦

2009-09-14 13:37:25

LINQ ADO.NE

2009-11-04 09:18:12

ADO.NET _Re

2009-07-06 10:43:51

ADO.NET

2009-11-13 10:10:07

2009-11-12 10:06:01

ADO.NET讀取數(shù)據(jù)

2009-11-11 09:54:34

ADO.NET Rec

2009-11-04 15:05:45

ADO.NET事務

2009-11-04 10:48:02

ADO.NET Dat

2009-11-04 12:45:33

ADO.NET Dat

2009-12-31 10:57:14

ADO.NET SEL

2009-11-12 15:00:03

ADO.NET實體數(shù)據(jù)

2009-11-03 17:12:33

ADO.NET Exe

2009-12-28 15:11:36

ADO.NET專家

2009-11-04 10:35:42

ADO.NET Con

2009-11-11 10:55:10

ADO.NET對象

2009-11-03 16:37:10

2011-05-20 11:31:07

ADO.NET

2009-12-23 11:17:21

ADO.NET SQL

2009-11-11 17:24:59

ADO.NET連接管理

2010-01-04 10:48:30

ADO.NET特色
點贊
收藏

51CTO技術棧公眾號