无法为更新定位行,一些值可能已在最后一次读取后已更改
来源:互联网 发布:资历章排列软件 编辑:程序博客网 时间:2024/04/28 12:54
无法为更新定位行,一些值可能已在最后一次读取(2009-03-11 11:58:22)标签:it 报错:无法为更新定位行,一些值可能已在最后一次读取后已更改 在Delphi 7中,用ADOQuery或ADODataSet操作数据库很方便,可查询,可增删改。
但如果对数据进行修改保存,然后再次对其进行修改保存,就会遇到“无法为更新定位行,一些值可能已在最后一次读取后已更改”的问题。
原因有这样几种:
1.在数据库设计时,为某些字段设置了默认值,在修改进行提交以后,数据库会自动修改对应字段的所有行的默认值,从而导致了数据库与数据集中数据的不一致,使ADOQuery(adoDataSet)无法对数据集进行定位。
2.数据库对应的表没有主键,输入了重复的数据以后,数据库里有两条一样的数据,从而使ADOQuery无法对数据进行定位。
解决方法:
1.修改数据库设计,不再设置默认值,为数据库表定义主键,保证其唯一性。
2.在执行完ADOQuery.Post之后,执行ADOQuery.Refresh,对于设置默认值的情况可以解决。 (refresh后dataset中的默认值字段获得了值,跟数据库中一致了)
3.改用Insert into sql语句插入,而不是add--post方式. 但这种方式不更新其他打开该表的query, 所以要requery才行, refresh不起作用.
4.使用ADODataSet也是同样的解决方法
阅读全文
1 0
- 无法为更新定位行。一些值可能已在最后一次读取后已更改。
- 无法为更新定位行。一些值可能已在最后一次读取后已更改。
- 无法为更新定位行。一些值可能已在最后一次读取后已更改。
- 无法为更新定位行。一些值可能已在最后一次读取后已更改。
- 无法为更新定位行。一些值可能已在最后一次读取后已更改
- 无法为更新定位行 一些值可能已在最后一次读取后已更改
- 无法为更新定位行,一些值可能已在最后一次读取后已更改
- 关于‘无法为更新定位行。一些值可能已在最后一次读取后已更改’问题的解决办法
- 无法为更新定位行。一些值可能已在最后一次读取后已更改 的解决方案
- 奇怪的“无法为更新定位行。一些值可能已在最后一次读取后已更改”
- “无法为更新定位行,一些值可能已在最后一次读取后已更改”问题的解决方法
- ADO错误: 无法为更新定位行。一些值可能已在最后一次读取后已更改解决办法
- 用ADO更新MYSQL报“无法为更新定位行。一些值可能已在最后一次读取后已更改”问题的解决
- 用ADO更新MYSQL报“无法为更新定位行。一些值可能已在最后一次读取后已更改”问题的解决
- 无法为更新定位行。一些值可能已在最后一次读取后已更改 错误提示的处理办法(vb)
- 解决Delphi ADO无法为更新定位行。一些值可能已在最后一次读取后已更改的问题
- 链接服务器 OLE DB 访问接口 无法为更新定位行。一些值可能已在最后一次读取后已更改
- Word无法读取此文档,文档可能已损坏
- Android 图片拉伸,填充ImageView
- uploadfiy插件的使用(02_单图)
- 19 个 JavaScript 常用的简写技术
- 如何下载POI标注-信息点
- OpenCV之RNG生成随机数类详解
- 无法为更新定位行,一些值可能已在最后一次读取后已更改
- 子类继承父类时,super的初始化位置
- 【语法】模板
- jQuery事件委派实例(双击删除图片和对应隐藏域)
- 面向对象--绑定方法与非绑定方法
- spring mvc 启动过程
- 一个女孩子四年同居后还剩下什么
- Unity3D编辑器之自定义窗口显示文件夹结构
- 项目管理工具禅道使用教程(简介,说明,邮箱设置)