DataTable1 有列A和B
DataTable2 有列B和C这2个DataTable一个为MYSql一个是MSSql所以无法数据库端合并,如何用C#合并?
之前用了DataTable.Merge()
之后发现他只是将2个DT的记录行合并起来,不是我要实现的
DataTable2 有列B和C这2个DataTable一个为MYSql一个是MSSql所以无法数据库端合并,如何用C#合并?
之前用了DataTable.Merge()
之后发现他只是将2个DT的记录行合并起来,不是我要实现的
循环一下这两个dt ,把数据加到新建的datatable 就行了。
DataTable2.Columns.Add("A");
DataTable1.Merge(DataTable2);
DataTable2.Columns.Add("A");
DataTable1.Merge(DataTable2);这个可行
a b
1 2
3 8b c
2 9
合并后是
a b c
1 2 9
3 8 而不是
a b c
1 2
3 8
2 9
DataTable dt = new DataTable();
DataColumn col1=new DataColumn("A",tpeof(string));
DataColumn col2=new DataColumn("B",tpeof(string));
DataColumn col3=new DataColumn("C",tpeof(string));
dt.Columns.Add(col1);
dt.Columns.Add(col2);
dt.Columns.Add(col3);
foreach(DataRow dr1 in DataTable1.Rows)
{
foreach(DataRow dr2 in DataTable2.Rows)
{
if(dr1["B"]==dr2["B"])
{
DataRow row = dt.NewRow();
row["A"] = dr1["A"];
row["B"] = dr2["B"];
row["A"] = dr2["C"];
dt.Rows.Add(row);//至此为止我已经把两个表中相关联的数据按照你的要求添加上去了。 还有其它的就更好弄了。你自己也动动脑筋吧。OK?
}
else
{
}
}
}