C#DataTable學習心得

C#DataTable學習心得

一、DataSet、DataTable、DataRow、DataColumn

1】 在DataSet中添加DataTable

     DataSet.Tables.Add(DataTable) 

實例:

    DataSet ds=new DataSet();

    DataTable table=new DataTable("學生表");

    ds.Tables.Add(table);
2】從DataSet中讀出DataTable

     DataTable=DataSet.Tables[0]或DataSet.Tables["表名"] 

實例:

    DataTable table=ds[i]或DataTable table=ds["學生表"]

    //i爲DataSet中的索引值,因爲DataSet可存放多個DataTable,可以根據索引值來找DataTable或直接寫DataTable的名稱來找DataTable
3】添加行
     DataTable t=new DataTable();
     DataRow r=t.NewRow();
     r["列名"]=列值;
     t.Rows.Add(r) ;

實例:

    DataTable:學生表

    id    name

    1    xun

代碼:

    DataTable t=new DataTable("學生表");

    DataRow r=t.NewRow();

    r["id"]=2;

    r["name"]=xun2;

    t.Rows.Add(r);

4】添加列

     DataTable.Columns.Add("列名",Type.GetType("數據類型"))  ;
5】從行中讀列值

     DataRow["列名"]或DataRow[DataColumn];  
6】從DataTable中讀列值

    DataTable table;

    a、table.Rows[i]["列名"]

    b、table.Rows[i][i]

    c、table[i].列名(列名不加引號)

7】讀出特定的行

    DataTable table;

    DataRow[] selectRow=table.Select("列名='"+存放特定的變量.ToString()+"'");

    選擇其中的一行:selectRow[索引]

二、刪除DataTable中的行三種方法:(DataTable.Rows.Remove(DataRow dr)、DataTable.Rows.RemoveAt(i)、DataRow.Delete())

刪除DataTable中的行要注意索引問題,一般有兩種方法:
1】用for循環時,注意計數器初始值爲表長,自減循環。DataTable.Rows.RemoveAt(i)就要注意。
2】用DataTable的Select方法,注意該方法的參數是字符串篩選器
3】Delete()之後需要datatable.AccepteChanges()方法確認完全刪除,因爲Delete()只是將相應列的狀態標誌爲刪除,還可以通過datatable.RejectChanges()回滾,使該行取消刪除。若要刪除多行,可以連續用Delete(),然後採用AccepteChanges()方法確認刪除。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章