delphi中的bookmark问题
我遇到一个奇怪的问题:
我在这样的情况下使用bookmark
在数据库中,插入一条数据(主表),同时也插入明细表的数据.
插入完后,就点刷新按钮(在该按钮事件中,用到bookmark)
procedure shuaxin.onclick(...);//刷新按钮的主要代码功能如下:
var
bk:tbookmark;
begin
bk:=adsMaster.getbookmark;
adsMaster.close;
adsMaster.open; //先前以为和这个重新colse open之后有关系,但是自己另外的工程中没有影响
adsMaster.gotobookmark(bk);
adsmaster.freebookmark(bk);
end;
刷新后,就不能定位到刚刚插入的那一条记录上
怎么回事????????????
[解决办法]
用ADOQuery1.Locate定位吧
先把主键的值记录下来,open后ADOQuery1.Locate(主键字段名,主键值,选项)
tbookmark会出现不准确的情况
[解决办法]
重新打开后位置变了。
用locate
[解决办法]
帮你顶一下
[解决办法]