.NET中DataTable的常用操作

Posted wangyihome

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了.NET中DataTable的常用操作相关的知识,希望对你有一定的参考价值。

一、目的

  在各种.NET开发中,DataTable都是一个非常常见且重要的类型,在与数据打交道的过程中可以说是必不可少的对象。

  它功能强大,属性与功能也是相当丰富,用好的话,使我们在处理数据时,减少很多工作量,且提高工作效率。它丰富的功能帮助我们解决很多问题的同时,也增加了记忆的难度,之前学习且记住的方法,一段时间没用到就会忘记,等再需要用到它时,有需要进行百度或谷歌,比较浪费时间。因此,这里将各种常用场景下的DataTable操作记录下来,一是容易回顾学习,二是方便工作时查阅。

  但时,因为经验的欠缺,熟悉的使用场景较少,因此会在每次遇到一个新的使用场景且觉得很典型,以后可能在用到时,再进行增加。如果看到其他高手的方法更加高明,也会对已有的操作进行更新。所以该篇博客是一个长期工作,需要时间和精力慢慢来进行完善。

二、DataTable类常用操作

  1、创建表结构并插入数据

    这种方式创建表在实际开发工作中很少用到,但也需要熟悉,很少用到不代表不会用到,比如自己做一些测试时。这个实在太基础,如果不能随手写出来实在有点不好意思。

            //创建一个空表
            DataTable dt = new DataTable();
            DataColumn column;
            DataRow row;

            //创建第一列
            column = new DataColumn();
            column.DataType = System.Type.GetType("System.Int32");
            column.ColumnName = "ID";
            column.ReadOnly = true;
            column.Unique = true;
            dt.Columns.Add(column);
            //创建第二列
            column = new DataColumn();
            column.DataType = System.Type.GetType("System.String");
            column.ColumnName = "NAME";
            dt.Columns.Add(column);
            //创建第三列
            column = new DataColumn();
            column.DataType = System.Type.GetType("System.Int32");
            column.ColumnName = "AGE";
            dt.Columns.Add(column);

            //创建行
            row = dt.NewRow();
            row["ID"] = 1;
            row["NAME"] = "小明";
            row["AGE"] = "18";
            dt.Rows.Add(row);

  2、复制表结构

      这种操作只复制表结构,不复制数据,得到一个已包含列的空表,这样就减去了上面繁琐的创建列的操作。

            DataTable dt2 = dt.Clone();//这里的dt是上面已经建好的
            DataRow row = dt2.NewRow();
            row["ID"] = 2;
            row["NAME"] = "小山";
            row["AGE"] = "15";
            dt2.Rows.Add(row);         

 (未完待续)

以上是关于.NET中DataTable的常用操作的主要内容,如果未能解决你的问题,请参考以下文章

DataTable排序

DataTable的Merge使用

DataTable常用方法属性

复制DataTabe的Rows到另一个DataTable

jQuery Datatable,通过 UI 调整 col 宽度

复制DataTabe的Rows到另一个DataTable