record not found or changed by other user!!高分求教

zlz95 2003-12-10 02:08:36
三层结构中,insert,delete,update后的delta传递到应用服务器,set reconciltodata为true,在应用服务器调用ApplyUpdate,insert成功,delte update抛出上述错误!
晴各位高人指点!!
...全文
62 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
风在天涯 2003-12-12
  • 打赏
  • 举报
回复
一般来讲,应该是你的数据表中有FLOAT类型的字段.请改用其它类型
hiflower 2003-12-11
  • 打赏
  • 举报
回复
没有 CDS.Refresh
wangxj333 2003-12-11
  • 打赏
  • 举报
回复
出现此问题的原因;
1.数据在保存时已经被其它人修改.
2.在新增保存后没有重新从数据库取数据而再次修改数据并保存,而数据库中该表有Default字段.
3.有异常字符,例如半个汉字.
我知道的就这些了,希望能帮到你.
  • 打赏
  • 举报
回复
MIDAS更新数据时,先用保存在ClientDataset中的旧数据查找定位记录,然后用delta中的数据提交进来的新数据更新该数据。当出现多用户操作时,就会出现冲突,由于可能有很多记录都产生错误,而对错误的处理必须由用户决定,所以Delphi中专门有1个Reconcile Error Dialog来处理这种错误,而不需要专门编写代码。可使用delphi提供的RecError单元,来实现。
VeryOldMan 2003-12-10
  • 打赏
  • 举报
回复
原理:MIDAS更新数据时,先用保存在ClientDataset中的旧数据查找定位记录,然后用ClientDataset中提交进来的新数据更新该数据。
“record not found or changed by other user”意即无法查找定位原来的记录啦!
建议:检查服务器端DataSetProvider的UpdateModel和Option属性设置。

1,594

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧