请教一个简单的问题:请问如何在显示上刷新修改后的记录信息?(15分)

  • 主题发起人 主题发起人 grayhare
  • 开始时间 开始时间
G

grayhare

Unregistered / Unconfirmed
GUEST, unregistred user!
假设一个最简单的情况,单表,在ADO连接方式下,使用了ADOConnection1、
ADOTabel1、DataSource1(其DataSet为ADOQuery1)、ADOQuery1
我用ADOQuery1进行了一次查询,假设获得a、b、c三条记录
我对b进行了修改后
如何才能使ADOQuery1中的相关信息显示得以刷新呢?
假设是更新操作,我想是显示刷新后的记录集仍是a、b、c,且当前记录仍为b
如果是删除操作,我想让当前记录为b的上一条记录,即为a

这个该如何实现?谢谢!
 
with ADOQuery1 do
begin
close;
open;
end;
如果查询中有唯一索引,则refresh即可
 
同上!
很简单的!
 
就是一个空操作即可?
 
先试试Adoquery1.Refresh;
不行的话可以这样:
先定义变量 var saveplace:tbookmark;
being
...
saveplace:=adoquery1.getBookmark; //保存记录标记
对记录进行操作(修改、增、删...)
Adoquery1.Requery();
Adoquery1.gotoBookmark(saveplace); //回到记录标记处
adoquery1.freebookmark(saveplace);
...
end;
原创软件区 http://go.163.com/delphibbs
 
ADOQuery1.Requery
 
用Adoquery1.Refresh;行是行,但运行速度很慢,这是怎么回事啊?
 
多人接受答案了。
 
后退
顶部