C#向DataTable插入列或行数据

本文介绍了如何使用C#中的DataTable进行数据操作,包括添加列名、插入数据行及批量插入多行数据的方法,并讨论了使用object类型数组的好处。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

     这次用到了C#中的Datatable,主要是把从数据库中取出的一张表的数据进行合并和对齐,同时处理后的数据要发送到前台进行展示

,所以在进行处理的时候原表的各个列名还要进行保存,首先我在网上找到了相关的向Datatable中插入一行数据的代码,然后进行了修改:

            dt.Columns.Add(ss);
            dt.Columns.Add("Name");
            DataRow dr = dt.NewRow();
            object[] objs = { "sd", "dlj" };
            dr["ID"] = objs[0];
            dr["Name"] = objs[1];
            dt.Rows.Add(dr);

         首先前两行代码是向dt这个Datatable中添加两个列名,然后新建一个DataRow对象吧,这个DataRow没有具体查过,先这样叫吧,

   然后是新建一个object类型的数组,用来存储要添加进去的对象,在这里之所以用Object是因为有时候我们并不知道我们要添加的数据

是什么类型,这样就可以避免出现因为类型不一样而导致的错误,还有就是当我们要插入的数据不一定都是同一类型的时候,我们也可

以用这种方法,但是我感觉这个时候如果不用object我们可以用泛型来代替。

  dr["ID"] = objs[0];dr["Name"] = objs[1]; 这两行代码也可以用ItemArray = objs;来代替,只是上面的两行代码可以制定要添加的

某列的数据。

但是这个代码也有一定的问题,比如一次只能插入一行数据,如果再想插入另外一行数据的话,就会提示dr已经是表dt

中的对象,这个时候可以给dt添加一个类似于数据库中ID自增长的主键,不过我感觉这样比较麻烦,要给表dt添加一列

后来我想了另外一种方法就是,用一个for循环每一次循环的时候都创建一个DataRow对象,这样就可以插入多个对象了

代码如下:

 //for (int i = 0; i < 3; i++)
            //{
            //    DataRow dr = dt.NewRow();
            //    object[] objs = { "sd", "dlj" };
            //    dr["ID"] = objs[0];
            //    dr["Name"] = objs[1];
            //    dt.Rows.Add(dr);              
            //}

哦对了,还有一个就是要把原表的列名原封不动的传过去:

 for (int m = 0; m < colum_count; m++)
               {
                   dt.Columns.Add(temp_dt.Columns[m].ColumnName);
               }

最近用到的Datatable的操作目前就这样了有!以后再补充吧!


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Master_Yoda

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值