| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1191 人关注过本帖
标题:关于adodc控件操作会错误更新其他字段的求解
取消只看楼主 加入收藏
w360989426
Rank: 5Rank: 5
等 级:职业侠客
威 望:4
帖 子:228
专家分:301
注 册:2013-11-12
结帖率:84%
收藏
已结贴  问题点数:40 回复次数:7 
关于adodc控件操作会错误更新其他字段的求解
使用到的控件:datagrid1,datagrid2,adodc1,adodc2,
datagrid1的datasource是 adodc1
datagrid2的datasource是 adodc2
图1
图片附件: 游客没有浏览图片的权限,请 登录注册

datagrid1.选中要查看的订单编号 按下enter键盘会跳出datagrid2如下图2,请注意上图第一行的订单编号为100001
图2
图片附件: 游客没有浏览图片的权限,请 登录注册

此图2为datagrid2的明细,按下esc的时候,datagrid2会隐藏,显示datagrid1,如下图3,问题出现了
图3
图片附件: 游客没有浏览图片的权限,请 登录注册
请看图3,当esc后datagrid2隐藏后,datagrid1显示后,第一行的订单编号变成了上次查看明细的订单编号
注:datagrid1.allowedupdate 是false
数据库中的数据也被更改了。。不知为什么,请求指教,万分感谢!!!
程序测试.rar (6.18 KB)
汇款数据库_Data.rar (111.22 KB)
搜索更多相关主题的帖子: 键盘 
2014-03-07 22:56
w360989426
Rank: 5Rank: 5
等 级:职业侠客
威 望:4
帖 子:228
专家分:301
注 册:2013-11-12
收藏
得分:0 
我的数据库中市是有key的,附件的2个表是其中2个表,我复制出来的,订单表的外键市是id编号,订单编号表头主键是id编号,通过这个来连接的,不是没有key的问题,我把adodc1的locktype改成了readonly就解决了,虽然不知道为什么,默认的会出现这种问题
2014-03-08 00:03
w360989426
Rank: 5Rank: 5
等 级:职业侠客
威 望:4
帖 子:228
专家分:301
注 册:2013-11-12
收藏
得分:0 
回复 5楼 lowxiong
版主,这不是key的问题,
图片附件: 游客没有浏览图片的权限,请 登录注册
,在我的数据库中,有key,但问题依然存在,版主你可以将id_编号设为主键,订单表中的id_编号设为外键,你试试问题依然存在,不知为什么
注:在我esc后停留咋adodc1. recoredset.find 这句的时候,datagrid1.的第一行已被更改,但并没有更新到数据库中
如果我后面执行 adodc1.recordeset.find,第一行数据库中的内容即被更改。很是奇怪,甚是不解!
这2个表是我从数据库中复制大另外一个数据库中的,所以这2个表没有保留结构,版主你可以把key和关系手动加上试一试,问题依旧!
我这个中共有3个adodc控件,起不同的作用
adodc1主要是显示和控制datagrid1的,这个无update需求
adodc2主要是显示和控制datagrid2的,这个有update需求
adodc3主要是备用
2014-03-08 09:49
w360989426
Rank: 5Rank: 5
等 级:职业侠客
威 望:4
帖 子:228
专家分:301
注 册:2013-11-12
收藏
得分:0 
回复 7楼 lowxiong
Adodc1.Recordset.Close
    Adodc1.Recordset.CursorLocation = adUseServer
    Adodc1.Refresh
我已将上述代码写入事件中,不过问题依然存在,我觉得这并不是游标的问题,因为我adodc1这个控件不涉及到更新数据库的问题,而它却莫名的修改数据库中的内容,个人认为这是1个bug
2014-03-08 12:24
w360989426
Rank: 5Rank: 5
等 级:职业侠客
威 望:4
帖 子:228
专家分:301
注 册:2013-11-12
收藏
得分:0 
回复 9楼 lowxiong
版主,你的录像我看了,发现操作问题,见图1,图2
图1
图片附件: 游客没有浏览图片的权限,请 登录注册

这是版主你选择的方法,这种方法,我试过了,不会出现更改数据的情况,但是这种选择方式只有用鼠标的情况下会生效
图2
图片附件: 游客没有浏览图片的权限,请 登录注册

这是我用的选择的方式,与版主的不一样,这就导致了会更改数据,版主在试试,不要用图1方式选择数据,图2是较为普遍的选择数据的方式,用键盘就可以实现高亮显示,
所以还请在测试一遍
2014-03-08 13:15
w360989426
Rank: 5Rank: 5
等 级:职业侠客
威 望:4
帖 子:228
专家分:301
注 册:2013-11-12
收藏
得分:0 
回复 11楼 lowxiong
版主果然NB,这样的疑难杂症都解决了,谢谢拉
2014-03-08 14:00
w360989426
Rank: 5Rank: 5
等 级:职业侠客
威 望:4
帖 子:228
专家分:301
注 册:2013-11-12
收藏
得分:0 
回复 4楼 lowxiong
还有一个问题,就是如果我按照版主的方法,直接将adodc1控件的locktype改成readonly也可以解决。。想问一下这种方法与版主的方法哪个好?
2014-03-08 14:18
w360989426
Rank: 5Rank: 5
等 级:职业侠客
威 望:4
帖 子:228
专家分:301
注 册:2013-11-12
收藏
得分:0 
回复 15楼 lowxiong
版主,不用控件?都自己写?不是吧
2014-03-08 14:35
快速回复:关于adodc控件操作会错误更新其他字段的求解
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024339 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved