三层应用中数据更新出错! (50分)

H

HHSH

Unregistered / Unconfirmed
GUEST, unregistred user!
我在使用clientdataset1.applyupdates(-1)时,从弹出的ReconcileErrorForm中显示如下
信息:Update affected more than 1 record。有人说这是缺少主键的原因。
我要更新的表的确没有主键,但是我在中间层的Tdatasetprovider组件的属性updatamode
设为upwhereall,这意味着查找时要对比所有字段,如果是这样,表中的记录是绝不会有
重复的,所以我觉得没有设置主键的必要(有时也比较麻烦)。那为什么在更新时检测到了
有重复的记录呢?
如何修正这个错误呢?在不增加主键的前提下。
 
根据你修改的记录条件找到了多条
 
你在ClientDataSet里面更新的数据有多少条呢?。。
详细的再说说。。
 
TO CJF
现在我只要动一条记录,再保存,就出现这个提示!
真气人。
 

估计你的数据集有重复记录,
如果在给数据集每次写入数据时,有唯一主键值与该记录对应,选出的数据集就不会有重复记录
可参考:
http://www.delphibbs.com/delphibbs/dispq.asp?lid=725383
 
多人接受答案了。
 
顶部