无法为更新定位行。一些值可能已在最后一次读取后已更改。
来源:互联网 发布:剑三萝莉异瞳捏脸数据 编辑:程序博客网 时间:2024/04/28 02:47
导读:
提示:在使用TADOTable 进行更新操作的时候也会出现类似的问题。
原因:
Access 2000 (9.0.2812)
在access里做了一个测试表
表名test1
字段分别是
myid 文本
myname 文本
sumtotal 货币
remark 文本
在BCB里用ado连接,连接字符串:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=./data/bbg.mdb;Persist Security Info=False
程序加入一个ADOQuery,写入SQL:select * from test1
测试程序启动我做了以下几个工作:
(1)
ADOQuery1->Open();
(2)
ADOQuery1->Append();
ADOQuery1->FieldByName("myid")->AsString = "001";
ADOQuery1->Post();
(3)
ADOQuery1->Edit();
ADOQuery1->FieldByName("sumtotal")->AsFloat = 12;
ADOQuery1->Post();
在步骤三的post提示错误: 无法为更新行集定位,一些值可能在最后读取后改变.
然后使用fields editor将所有字段添加进来,设置
myname,sumtotal,remark的ProviderFlags的pfInWhere,pfInKey,pfHidden,都是false,只有pfInUpdate为true;myid的pfInKey,pfHidden是false, pfInUpdate,pfInWhere为true,重新执行上面的三步还是同样的错误信息.
---------------------------------------------------------------
答案一
将 ADOTable1->CursorLocation 的属性改为 clUseServer
答案二
在设计access表的时候,将所有的默认值去掉;
当CursorLocation 的属性是clUseClient时,因为数据库存在默认值,在第一次append的时候,数据库自动修改了部分列,所以客户端无法定位。
本文转自
http://blog.donews.com/jiji262/archive/2006/09/11/1034665.aspx
提示:在使用TADOTable 进行更新操作的时候也会出现类似的问题。
原因:
Access 2000 (9.0.2812)
在access里做了一个测试表
表名test1
字段分别是
myid 文本
myname 文本
sumtotal 货币
remark 文本
在BCB里用ado连接,连接字符串:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=./data/bbg.mdb;Persist Security Info=False
程序加入一个ADOQuery,写入SQL:select * from test1
测试程序启动我做了以下几个工作:
(1)
ADOQuery1->Open();
(2)
ADOQuery1->Append();
ADOQuery1->FieldByName("myid")->AsString = "001";
ADOQuery1->Post();
(3)
ADOQuery1->Edit();
ADOQuery1->FieldByName("sumtotal")->AsFloat = 12;
ADOQuery1->Post();
在步骤三的post提示错误: 无法为更新行集定位,一些值可能在最后读取后改变.
然后使用fields editor将所有字段添加进来,设置
myname,sumtotal,remark的ProviderFlags的pfInWhere,pfInKey,pfHidden,都是false,只有pfInUpdate为true;myid的pfInKey,pfHidden是false, pfInUpdate,pfInWhere为true,重新执行上面的三步还是同样的错误信息.
---------------------------------------------------------------
答案一
将 ADOTable1->CursorLocation 的属性改为 clUseServer
答案二
在设计access表的时候,将所有的默认值去掉;
当CursorLocation 的属性是clUseClient时,因为数据库存在默认值,在第一次append的时候,数据库自动修改了部分列,所以客户端无法定位。
本文转自
http://blog.donews.com/jiji262/archive/2006/09/11/1034665.aspx
- 无法为更新定位行。一些值可能已在最后一次读取后已更改。
- 无法为更新定位行。一些值可能已在最后一次读取后已更改。
- 无法为更新定位行。一些值可能已在最后一次读取后已更改。
- 无法为更新定位行。一些值可能已在最后一次读取后已更改。
- 无法为更新定位行。一些值可能已在最后一次读取后已更改
- 无法为更新定位行 一些值可能已在最后一次读取后已更改
- 无法为更新定位行,一些值可能已在最后一次读取后已更改
- 关于‘无法为更新定位行。一些值可能已在最后一次读取后已更改’问题的解决办法
- 无法为更新定位行。一些值可能已在最后一次读取后已更改 的解决方案
- 奇怪的“无法为更新定位行。一些值可能已在最后一次读取后已更改”
- “无法为更新定位行,一些值可能已在最后一次读取后已更改”问题的解决方法
- ADO错误: 无法为更新定位行。一些值可能已在最后一次读取后已更改解决办法
- 用ADO更新MYSQL报“无法为更新定位行。一些值可能已在最后一次读取后已更改”问题的解决
- 用ADO更新MYSQL报“无法为更新定位行。一些值可能已在最后一次读取后已更改”问题的解决
- 无法为更新定位行。一些值可能已在最后一次读取后已更改 错误提示的处理办法(vb)
- 解决Delphi ADO无法为更新定位行。一些值可能已在最后一次读取后已更改的问题
- 链接服务器 OLE DB 访问接口 无法为更新定位行。一些值可能已在最后一次读取后已更改
- Word无法读取此文档,文档可能已损坏
- 刷新父窗口
- 常见的开源协议
- Oracle学习指南(SQLPLUS)
- html笔记
- 关于在struts2的文件简单上传
- 无法为更新定位行。一些值可能已在最后一次读取后已更改。
- DIV 模拟模态窗口
- VC++2005 console 程序错误
- linux驱动模块开机自动加载,以及应用程序开机自启动
- 无法为更新定位行。一些值可能已在最后一次读取后已更改。
- log4j.xml的基本配置
- 懒惰啊,不用学就会的
- 13句话让客户没法拒绝你
- js显示日期和时间