DataSet,DataTable與DataView,DataGridView,DataSource之間的聯繫

每一個DataSet都是一個或多個DataTable 對象的集合(DataTable相當於數據庫中的表),這些對象由數據行(DataRow)、數據列(DataColumn)等組成。 DataView是對某一個DataTable建立視圖,用來在觀察數據時提供排序和過濾的功能。

1.DataSet與DataTable的相互轉換
DataSet ds = new DataSet();
DataTable dt = ds.Tables[0];

2.DataTable的簡單操作
1)獲取所有行。
DataRow[] rows = dt.Select();

2)按主鍵順序(如沒有主鍵,則按照添加順序)獲取符合篩選條件的行。
DataRow[] rows = dt.Select(“ID>52”);

3)獲取符合篩選條件的行,並按指定的排序條件排序。

DataRow[] rows = dt.Select(“ID>52”,“ID DESC”);

4)獲取符合篩選條件和指定狀態的行,並按指定的排序條件排序。
string strExpr = “ID>52”;
string strSort = “ID DESC”;
DataRow[] foundRows = dt.Select(strExpr, strSort, DataViewRowState.OriginalRows);

3.合併兩個DataTable表的數據
DataTable dt1 = ds.Tables[0];
DataTable dt2 = ds.Tables[1];
dt1.Merge(dt2, true, MissingSchemaAction.AddWithKey);
//或者
//將兩個DataTable合併成一個
DataTable d1 = null;//源數據1
DataTable d2 = null;//源數據2
DataTable newDataTable = d1.Copy();//複製出一個新表
//添加DataTable2的數據
foreach (DataRow dr in d2.Rows)
{
newDataTable.ImportRow(dr);//將兩個datatable合併
}

4.DataView
DataView dv = ds.Tables[0].DefaultView;
//或
DataView dv = new DataView(ds.Tables[“Product”], “ID > 52”, “ID DESC”,
DataViewRowState.CurrentRows);

5.DataColumn創建與賦值
DataColumn dc = new DataColumn(“ID”, typeof(string));
dt.Columns.Add(dc);
DataRow row = dt.NewRow();
row[“ID”] = “1”;

發佈了93 篇原創文章 · 獲贊 26 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章