• 复制Datatable结构和数据,并按条件进行筛选


    方法一:

    复制datatable结构,复制datatable结构和数据,筛选Datatable数据

    复制datatable结构: datatable .clone()
    复制datatable结构和数据: datatable .copy()
    筛选datatable :

    datatable .select("name like '%abc%'")
    datatable .select("name ='abc'")
    datatable .select("name >'abc'")

    方法二:

    DataTable.Copy 方法

    返回值
    新的 DataTable,它具有与该 DataTable 相同的结构(表架构和约束)和数据。
    注意   如果这些类已经过派生,则副本也具有相同的派生类。
    示例
    以下示例使用 Copy 方法创建初始 DataTable 的副本。
    [Visual Basic]
    Private Sub CopyDataTable(ByVal myDataTable As DataTable )
        ' Create an object variable for the copy.
        Dim copyDataTable As DataTable
        copyDataTable = myDataTable.Copy()
        ' Insert code to work with the copy.
    End Sub


    [C#]
    private void CopyDataTable(DataTable myDataTable){
        // Create an object variable for the copy.
        DataTable copyDataTable;
        copyDataTable = myDataTable.Copy();
        // Insert code to work with the copy.
    }

    DataTable.Clone 方法

    返回值
    新的 DataTable,与当前的 DataTable 具有相同的架构。
    备注
    注意   如果这些类已经过派生,则副本也具有相同的派生类。
    示例
    以下示例创建 DataTable 对象架构的复本。
    [Visual Basic]
    Private Sub GetClone(ByVal myDataTable As DataTable)
        ' Get a clone of the original DataTable.
        Dim cloneTable As DataTable
        cloneTable = myDataTable.Clone()
        ' Insert code to work with clone of the DataTable.
    End Sub
    [C#]
    private void GetClone(DataTable myDataTable){
        // Get a clone of the original DataTable.
        DataTable cloneTable;
        cloneTable = myDataTable.Clone();
        // Insert code to work with clone of the DataTable.
    }

    方法一和二都经过测试,可以直接使用。

    注意:为了数据集在复制过程中出现覆盖的情况,复制数据后把复制后的数据集重命名: DataTable dt = new DataTable ();
            dt.TableName = "newtable";

     ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

                    DataTable dtSelct = frmData.Copy();
                    string code = MesDataGird.Rows[0].Cells[2].Value.ToString();
                    string rname = MesDataGird.Rows[0].Cells[1].Value.ToString();
                    string cust_msu = MesDataGird.Rows[0].Cells[3].Value.ToString();
                    DataRow slctRow = dtSelct.Rows[0];
                    slctRow["code"] = code;
                    slctRow["rname"] = rname;
                    slctRow["cust_msu"] = cust_msu;
                    if (code != "")
                    {
                        DataView dv = new DataView(dtSelct);
                        dv.RowFilter = "code like '%" + code + "%'";
                        dtSelct = dv.ToTable();
                        dv.Dispose();
                    }

    复制表结构和数据,并按条件进行筛选

  • 相关阅读:
    (转+原)android获取系统时间
    (转+原)VC编译错误:uafxcw.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int)" (??2@YAPAXI@Z) 已经在 LIBCMT.lib(new.obj) 中定义
    android的reference table的问题
    (原+转)Eclipse中Android调用OpenCv
    JAVA IO 字符流 FileReader FileWriter
    JAVA IO
    JAVA FIle类
    JAVA 泛型
    JAVA Collection工具类 Collections
    JAVA Map子接口之 HashMap
  • 原文地址:https://www.cnblogs.com/swarb/p/9924454.html
Copyright © 2020-2023  润新知