zoukankan      html  css  js  c++  java
  • 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()方法确认删除。

  • 相关阅读:
    Oracle查看占用表空间最大的表(排序)
    Access denied for user 'test'@'%' to database 'mysql'
    DB2新建编目及删除编目
    DB2备份恢复schema
    Linux/Aix日常报错整理
    Oracle查看存储过程最后编辑时间
    No X11 DISPLAY variable was set
    数据库的数据进行改动,Cognos报表展示未及时更新
    Oracle数据库学习笔记_常用分区partition操作语句
    Oracle数据库学习笔记_sql 语句NVL()用法
  • 原文地址:https://www.cnblogs.com/Footprints/p/3008352.html
Copyright © 2011-2022 走看看