C# System.Data.DataTable的两种使用操作

1、System.Data.DataTable的基本操作:

插入列:

        dt.Columns.Add("user_name",typeof(string));   

        或者dt.Columns.Add("id", System.Type.GetType("System.String"));

        或者DataColumn dc = new DataColumn("foldername", System.Type.GetType("System.String"));

                dt.Columns.Add(dc);

添加数据:

        DataRow dr=dt.NewRow();   

       dr[0]="zhangsan";   

       dt.Rows.Add(dr);  

修改数据:

       DataRow dr = dt.Rows[i];   

       dr.BeginEdit();   

       dr[0] = this.textBox1.Text;   

       dr.EndEdit();

删除数据:

      DataRow dr = dt.Rows[i]; 

      dt.Rows.Remove(dr);

     或者dr.Delete();  

 

2、System.Data.DataTable的表达式操作(类似sql操作):

查找行(检索):

    DataRow[] drs = dt.Select("id is null");   

排序:

    dt.DefaultView.Sort = "id desc,foldername";   

    dt = dt.DefaultView.ToTable();   

统计操作方法(Compute):

     public object Compute(string strExpression,stringstrFilter)

                strExpression:要计算的表达式字符串,基本上类似于Sql ******中的统计表达式

                strFilter:统计的过滤字符串,只有满足这个过滤条件的记录才会被统计  (可以设置成true进行无条件)

    例:table.Compute("Count(*)","Birthday<’"+today);    //today为日期字符串

            table.Compute("Aver(Price)","true");  //统计平均

            table.Compute("Aver(Price)","true");  //统计平均

            table.Compute("Sum(Quantity)","ProID=1");   //求和

      注意: 这种复杂的表达式是不支持的,需要先在每一行中添加一个合计列,最后针对这个合计列进行求和

                          错误的写法: table.Compute("Sum(Quantity*Price)","true");

                          正确的写法: table.Columns.Add("total",typeof(decimal), “Quantity*Price” );   

                                                    table.Compute("Sum(total)","true");

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值