"select id,name from tableName" (id为primaryKey,自动标识符)放于两个DATASet:ds1和ds2中,在winform窗体中绑定到datagrid1(name为dg1),和DAtaDGrid2(dg2),修改完dg1后用其dataadapter.update(ds,..)成功,调用ds.acceptchange,再在另一个dg2中作出数据修改,调用adapter.update更新,因为此时源数据已经被修改了,出现并发冲突错误,请问怎么样解决这个问题,(注意数库中数据有主键列的,但不是不能对上,是否更新时检查了timestamp),请问怎么样解决问题,不能在更新ds1后在ds2中再重新调用数据,因为两个dg可能同时被编辑,无法让后更新数据的用户重新编辑一次,谢谢

解决方案 »

  1.   

    不调用dataset的方法,自己写SQL语句来实现更新,这样可以不?或者就用两个dataadepter来对应两个dataset,
      

  2.   

    试了用两个DataAdapter来填充分别填充dataset,两个dataAdapter一直保持到更新再用其update
    两个相应的ds,还是出错。
      

  3.   

    尝试手动编写更新语句,根据主键,自己写update语句。
      

  4.   

    可以自已写DataAdapter的updateCommand等各命令对像来更新,还可以捕捉更新错误去处理,我现在想知道的是如果没有主键也没有唯一索引的话,还有没有办法去处理解决呢?