有两个表通过主键关联,我知道主键是什么,但不知道其它列的约束(列数是不确定的,通过另一张表给出他们的列,以及要显示的列),我要从中选出需要的列组合成新表显示出来,在修改后需要更新. system 表---记录所有的列,以及要显示的列,字段如下: tablename fieldname visible table1 a 0 table1 b 1 table1 c 1 table2 a 0 table2 b 0 table2 c 1 ---已知table1.a于table2.a关联 ---select table1.b,table1.c,table2.c from table1,table2 where table1.a=table2.a 我的思路是各自选出所有的字段,放入DataSet中,然后组合并显示(隐藏掉不显示的列),但不知该怎样组合,不知改怎样更新。
DataTable dt1 = ds.Tables[0];
DataTable dt2 = ds.Tables[1];
//将dt1的2,3行,dt2的3,4行组合成新表newTable
DataTable newTable;//将dt1的2,3行,dt2的3,4行分别写到row里,插入新表
DataRow row = newTable.NewRow();
row=dt1的第2行
DataRow row = newTable.NewRow();
row=dt1的第3行
DataRow row = newTable.NewRow();
row=dt2的第3行
DataRow row = newTable.NewRow();
row=dt2的第4行//:newTable即是你要的新表。
newTable = dataset.tables[0].clone();//得到表的结构
newTable.ImportRow(...)//直接导入一行数据。如果表结构都不一样,那你就是一行一行、一列一列的for吧
clone或是copy一个 table出来,通过add,remove去构造你需要的table
tablename fieldname visible
table1 a 0
table1 b 1
table1 c 1
table2 a 0
table2 b 0
table2 c 1
---已知table1.a于table2.a关联
---select table1.b,table1.c,table2.c from table1,table2 where table1.a=table2.a
我的思路是各自选出所有的字段,放入DataSet中,然后组合并显示(隐藏掉不显示的列),但不知该怎样组合,不知改怎样更新。