zoukankan      html  css  js  c++  java
  • C#DataTable 的一些操作经常操作

    经常操作DATATABLE  对于一些不需要再通过sql 来重复操作的   可以通过操作datatable来达到同样的效果

    方法一:

        也是广为人知的一种:

        YourDataTable.Columns.Remove("列名");

        但是这种情况只适合于去掉很少列的情况。

        如果有很多列我却只要一两列呢,那就得用方法二了。

    方法二:

       DataTable dat = YourDataTable.DefaultView.ToTable(false, new string[] { "你要的列名", "你要的列名" });

     

    补加dataTable操作相关内容:

    对DataTable 的一些操作

    在dataTable中最容易想到的是用for循环来操作,但事实不到万不得已是不会用form循环的,因为效率一般不高。

    1)  取行

    取行一般用rowfilter

    DataTable datSource;//数据源表

    //过滤表

    DataView davTemp = new DataView(datSource, "过滤条件", "排序字段", DataViewRowState.各种 状态);

    //把过滤后的表赋给新表

    DataTable datNew = davTemp.ToTable();

     

    2)取表的某列或多列

    DataTable datSource;//数据源表

    DataTable datNew= datSource.DefaultView.ToTable(false, new string[] { "列名", "列名" .....});

     

    3)复制某行的值[前提是表结构或列数相同]

    DataTable datSource;

    DataTable datNew;

    datSource.Rows[i].ItemArray= datNew. Rows[i].ItemArray;

     

    4)表列数相同,但是却列名不同,想复制值怎么办?

    换个思维方式,既然列数相同,只是列名不同,为什么不改变列名呢?

    如下:

    DataTable datSource;

    DataTable datNew;

    datNew= datSource.Copy();

    datNew.Columns["FirstColumn"].ColumnName = "YourColumnName";

     

    5)调整列的位置SetOrdinal();

      DataTable dat = new DataTable();   

    //添加三列   

    dat.Columns.Add("col1");   

    dat.Columns.Add("col2");  

     dat.Columns.Add("col3");   

    //添加一行数据   

    dat.Rows.Add(1,2,3);  

     //把第三列放到第一的位置   

    dat.Columns["col3"].SetOrdinal(0);

  • 相关阅读:
    分别用Excel和python进行日期格式转换成时间戳格式
    数据分析之数据质量分析和数据特征分析
    BP neural network optimized by PSO algorithm on Ammunition storage reliability prediction 阅读笔记
    Matlab的BP神经网络工具箱及其在函数逼近中的应用
    js 深拷贝+浅拷贝
    git fork了项目之后修改再push给项目
    微信小程序的开发学习(2)
    Django学习
    小程序的开发学习
    JavaScript-闭包理解
  • 原文地址:https://www.cnblogs.com/dwuge/p/5261003.html
Copyright © 2011-2022 走看看