天天看點

DataSet、DataTable、DataRow、DataColumn差別及使用執行個體

DataSet

表示資料在記憶體中的緩存。

屬性 

Tables  擷取包含在 DataSet 中的表的集合。

ds.Tables["sjxx"]

DataTable

表示記憶體中資料的一個表。

公共屬性 

Columns 擷取屬于該表的列的集合。

DataSet 擷取此表所屬的 DataSet。

DefaultView 擷取可能包括篩選視圖或遊标位置的表的自定義視圖。

PrimaryKey 擷取或設定充當資料表主鍵的列的數組。

Rows 擷取屬于該表的行的集合。

TableName 擷取或設定 DataTable 的名稱。

DataRow

表示 DataTable 中的一行資料

row["index"]

DataColumn

表示 DataTable 中列的架構。

DataTable與DataSet常用操作執行個體

//建立DataSet

DataSet ds = new DataSet();

//建立DataTable

DataTable dt = new DataTable();

dt.Columns.Add("id",Type.GetType("System.Int32"));

dt.Columns["id"].AutoIncrement = true;

dt.Columns.Add("name",Type.GetType("System.String"));

//插入行

DataRow dw1 = dt.NewRow();

dw1["name"] = "test1";

dt.Rows.Add(dw1);

DataRow dw2 = dt.NewRow();

dw2["name"] = "test2";

dt.Rows.InsertAt(dw2,0);

//将DataTable添加到DataSet中

ds.Tables.Add(dt);

//DataTable中查詢

DataTable dt = new DataTable();

DataRow dr[] = dt.Select("1 = 1");

//DataTable更新

DataTable dt = (DataTable)HttpContext.Current.Cache["MYCACHE"];

DataRow[] dr = dt.Select("1 = 1");

if (dr.Length > 0)

{

    dr[0]["colName"] = "colValue";

}

//統計

object o = dt.Compute("SUM(col_name)", "1=1");