C# DataTable Select用法
使用背景:
完成一個查詢,返回一個DataTable後,很多時候都想在查詢結果中繼續搜索。這時可以使用DataTable.Select方法對結果進行再查詢。
DataRow[] dr = ds.Tables[table_name].Select(); DataRow[] dr = ds.Tables[table_name].Select("數據庫綁定在gridview上的列名='該列你要查詢的值'"); DataRow[] dr = ds.Tables[table_name].Select("數據庫綁定在gridview上的列名='該列你要查詢的值'","排序字段"); DataRow[] dr = ds.Tables[table_name].Select(); //一般情況下測試時table_name用0來代替 for (int i = 0; i < dr.Length; i++) { MessageBox.Show(dr[i]["CREATED_BY"].ToString()); }
小注:
1、一定要注意單引號的問題;我之前就是把變量用雙引號括起來了,一直出錯,後來在網上查,發現要先有雙引號,再用單引號;即‘“變量”’。
2、Select方法:
Select();//全部查出來 Select(過濾條件);//根據過濾條件進行過濾,如Select("columnname1 like '%xx%'"); Select(過濾條件,排序字段);//過濾,並排序,如Select("columnname1 like '%xx%'",columnname2);小注:
Select方法可以傳遞的類似於sql語句中的where條件部分,可以傳遞:條件1 and 條件2 and 條件3 這種形式,可以參考:導入Excel數據的時候,要檢驗數據是否重複
//數據量大的時候,在dataset中進行重複檢驗 strTemp = "AcctNo='" + obZH.ToString() + "' and TransDate='" + obRQ.ToString() + "' and SubAcctNo='" + obDFZH.ToString() + "'"; rowsTemp = dsTemp.Tables[0].Select(strTemp); if (rowsTemp.Length>0) { //如果重複了,進行記錄 repeatDj += "第" + v.ToString() + "行\r\n"; }
最後更新:2017-04-03 12:54:12