写一个方法如何操作Datatable实现改变列值后,交换(更新、插入)两个不同数据源dataset的DataTable....
ACCESS库里的表和ORACLE里的表都是TJB,不同的是前两列(关键字)的不同哦,ACCESS里是JTMC,JH,DQLS,ORACLE里是JHDH,JTID,DQLS,JHDH,JTID,DQLS值已经通过 JHDH='{WELLID}' AND JTID='{JTID}' AND DQLS='{DQLS}' 转换得到,如何操作Datatable实现替换ACCESSDB Datatable里的前两列关键字字段的值,其他列值不变,交换数据。
//////ACCESS、ORACLE表结构,xml描述如下:数据更新和插入////////////////////////////////////////////////
JCDB | JTMC,JH,DQLS | | JTMC,JH,DQLS,drjs,rq,xh | JDDB | | JHDH,JTID,DQLS | JTMC,JH,DQLS,drjs,rq,xh | | JHDH='{WELLID}' AND JTID='{JTID}' AND DQLS='{DQLS}' |
////////////////////////////////////////////////////////////////////////////////////////
//大致程序思路如下 ....
DataTable dt = new DataTable("temptabel");
//添加两列CustID,CustLName数据类型分别为Int32,String,并添加到数据表中
DataColumn JHDH= new DataColumn("JHDH", Type.GetType("System.Int32"));
DataColumn JTID= new DataColumn("JTID", Type.GetType("System.Int32"));
dt.Columns.Add(JHDH);
dt.Columns.Add(JTID);
//利用循环创建数据行并赋值,添加到数据表中
for (int i = 0; i< al.Count; i++)
{
DataRow dr = dt.NewRow();
DS_Option dso = (DS_Option)al;
dr["JHDH"] = GetJHDH(sql);
dr["JTID"] = GetJTID(sql);
//除这两列数据替换外其他数据保留,怎么做???????????????....
将从DataSet中查询出来的数据以行的形式保存到arow中。
string[] updateCols = whereExp.Split(',');
if (strCode=="")
{
updateCols = new string[_ACCESSDB.DataCollect.Tables[0].Columns.Count];
for (int i = 0; i< updateCols.Length; i++)
updateCols = _ACCESSDB.DataCollect.Tables[0].Columns.ColumnName;
}
DataRow[] arow = ds.Tables[temptabel].Select("JH='" + updateCols [0].ToString() + "' and JTMC ='" + updateCols [1].T
|