更新数据时并发冲突,请高手指点
"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可能同时被编辑,无法让后更新数据的用户重新编辑一次,谢谢 问题点数:100、回复次数:4Top
1 楼liangquewei(魔鬼)回复于 2006-03-19 20:12:59 得分 50
不调用dataset的方法,自己写SQL语句来实现更新,这样可以不?或者就用两个dataadepter来对应两个dataset,Top
2 楼tanger104753507(探戈)回复于 2006-03-20 23:20:12 得分 0
试了用两个DataAdapter来填充分别填充dataset,两个dataAdapter一直保持到更新再用其update
两个相应的ds,还是出错。Top
3 楼jkflyfox(飞狐)回复于 2006-03-21 01:47:26 得分 50
尝试手动编写更新语句,根据主键,自己写update语句。Top
4 楼tanger104753507(探戈)回复于 2006-03-21 15:51:58 得分 0
可以自已写DataAdapter的updateCommand等各命令对像来更新,还可以捕捉更新错误去处理,我现在想知道的是如果没有主键也没有唯一索引的话,还有没有办法去处理解决呢?Top




