问题描述
asp.net中,我已经获取了一个DataTable,指定表变量为dt,例如:dt表内容idnamesex1小王男2小李女3小黑男我现在想得到一个新的DataTable:dtnew想取id列和name列dtnew表内容idname1小王2小李3小黑使用dtnew.Colums.Add(dt.Colums["id"]);是不行的,提示id列已经在另一个datatable中使用.那我改怎么做呢?
解决方案
解决方案二:
先增加列,再循环增加这列的值.
解决方案三:
引用1楼pj100的回复:
先增加列,再循环增加这列的值.
感觉等于没说:(
解决方案四:
insertintodtnewselectid,namefromdt
解决方案五:
DataTabledtnew=newDataTable();dtnew.Columns.Add("id",typeof(string));//这里列的类型根据需要自己修改dtnew.Columns.Add("name",typeof(string));//这里列的类型根据需要自己修改foreach(DataRowdrindt.Rows)//这里的dt是你已获取数据的原表{dtnew.Rows.Add(newobject[]{dr["id"],dr["name"]});}
解决方案六:
dtnew.Colums.Add("id","System.Integer")
解决方案七:
引用4楼pp_shy的回复:
C#codeDataTabledtnew=newDataTable();dtnew.Columns.Add("id",typeof(string));//这里列的类型根据需要自己修改dtnew.Columns.Add("name",typeof(string));//这里列的类型根据需要自己修改foreach(DataRowdrindt.Rows)//这里的dt是你已获取数据的原表{dtnew.Rows.Add(newobject[]{dr["id"],dr["name"]});}
顶顶顶顶顶顶顶
解决方案八:
这么干就有两列id了,你要把第一个列名id换个名称
解决方案九:
你在搜dtnew的时候在sql里selectidasid_new,namefromnew_tbl然后就可以dtnew.Colums.Add(dt.Colums["id_new"]);
解决方案十:
select要插入的字段into目标表from源表