如何把一个DataTable中的一行数据添加到另一个DataTable

lnyang17 2008-12-03 05:31:57
如何添加呢
...全文
1212 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
yc544 2012-06-27
  • 打赏
  • 举报
回复
// 创建表3
DataTable dt3 = null;
// 将表一中的结构复制到表3
dt3 = dt1.Clone();
// 将表1和表2合并到表3
if (dt3 != null)
{
dt3.Merge(dt1);
dt3.Merge(dt2);
this.dataGridView1.DataSource = dt3;
}
QIAOYONGLU 2011-07-19
  • 打赏
  • 举报
回复
方法二:

首先新的DataTable必须加入对应的列名(Column)
一个空的没有结构的DataTable是不允许直接向里面加入一行的!
for (int i = 0; i < dt.Columns.Count; i++)
{
dt2.Columns.Add(dt.Columns[i].ColumnName);//有重载的方法,可以加入列数据的类型
}
然后就可以直接加入Row了!
//1
DataRow drq = dt2.NewRow();
drq.ItemArray = dt.Rows[0].ItemArray;//这是加入的是第一行
dt2.Rows.Add(drq);
//2
dt2.ImportRow(dt.Rows[0]);//这是加入的是第一行
QIAOYONGLU 2011-07-19
  • 打赏
  • 举报
回复
方法一:直接复制一个DataTable,然后清空数据(Column结构还保留),最后再用ImportRow()方法从dt中加入需要的Row;
DataTable dt2 = new DataTable();
dt2 = dt.Copy();
dt2.Rows.Clear();
dt2.ImportRow(dt.Rows[0]);//这是加入的是第一行
flyjimi 2008-12-03
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 Old_Mouse 的回复:]
两个表的数据结构需要一样。

C# code
DataTable dt1;
DataTable dt2;
DataRow row = dt1.Rows[X];
dt2.Rows.Add(row);
[/Quote]

这样添加的行,是两个table共享的。
如果需要复制后独立,就要自己逐个字段clone
jummy_lin 2008-12-03
  • 打赏
  • 举报
回复
datarow有很多潜在的属性,比如行改变状态,行删除状态。
因此直接用dt.Rows.Add(dr.ItemArray);这样的方法会改变行的状态。例如此句就会将行状态改为Added
因此必须用ImportRow的方法添加到另外的表中。这样这行的状态也会复制过去。
5楼介绍的方法你可以参考。


但是具体到你的问题来说,就看你的需求了,如果你不关心数据行的状态,只关心它的数据,那么用Add方法其实是最好的。
如果你的需求涉及到行状态,那么必须用ImportRow了。
孤独侠客123 2008-12-03
  • 打赏
  • 举报
回复
这个文章对你肯定有帮助.
http://blog.csdn.net/wangyihust/archive/2007/02/03/1501703.aspx
leiminlovesoft 2008-12-03
  • 打赏
  • 举报
回复
用克隆
孤独侠客123 2008-12-03
  • 打赏
  • 举报
回复


DataTable dt = new DataTable();

dr=所要添加到dt的DataRow。


dt.Rows.Add(dr.ItemArray);
长沙三毛 2008-12-03
  • 打赏
  • 举报
回复
苯办法了。
DataRow row2 = dataTable2.NewRow();
for(int k = 0; k < row1.Table.Columns.Count)
{
row2[k] = row1[k]; // row1是dataTable1的一行
}
dataTable2.Rows.Add(row2);
Old_Mouse 2008-12-03
  • 打赏
  • 举报
回复
两个表的数据结构需要一样。

DataTable dt1;
DataTable dt2;
DataRow row = dt1.Rows[X];
dt2.Rows.Add(row);

111,076

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧