无法为更新行集定位:一些值可能已在最后读取后改变。(300分)

  • 主题发起人 主题发起人 autumn
  • 开始时间 开始时间
A

autumn

Unregistered / Unconfirmed
GUEST, unregistred user!
ADO问题:
新建一个工程,使用ADOTable Microsoft Jet 4.0 OLE DB Provider
其他默认,然后用dbedit.
运行后,insert一记录,添一些东西,post,再修改,post
就error
"无法为更新行集定位:一些值可能已在最后读取后改变。"
谁帮我,300就是你的.
 
设置ADO的locktype,cursortype
 
Kill Night
请详细一点。value是什么?
 
是否有一REFRESH的问题。
 
我用的是Delphi5+MS ACCESS 97,没出现你说的情况,而且我的DAOTable除连接
参数外其他均为默认值,很好,速度比BDE快。你查查你的数据库是否有问题。
 
我在做分布式服务器时也遇到该情况,后来直接使用SQL语句才解决问题,或建议安装Delphi的ADO Update Pack,或会有改善。
 
hjking:
我的也是delphi5+access97,也是默认的参数,但就是在insert过程中,如果再次修改字段的值就出现这个问题。
kyq:
已经革新到最新的delphi版本pack1+ado pack.
fireboy:
没有refresh.
all:
如果使用dbgrid就不会有问题.
 
cursortype为adOpenKeyset;
locktype为adLockOptimistic
如果想变换其它值的话,可以查阅msdn
 
是数据库的默认值在作怪,绑定控件自动更新时,数据库有些字段的默认值就更新到了数据库中,而绑定控件没有刷新造成以上错误。解决方法:去掉数据库中的默认值即可。
 
多人接受答案了。
 
后退
顶部