日期:2014-05-16  浏览次数:21315 次

delphi+Access绑定刷新问题
我在做Delphi+Access时间遇到了,当我更新数据库后,关闭表,在打开表,可绑定在DBGridEh上的数据没有变化,除非把窗口关了在打开。
绑定如下:
with   ado_PB   do
  Begin
    ConnectionString   :=Str_Access;
    Close;
    sql.Text   := 'select   *   '
                    + '   from   表1   a   left   join   表2   b   on   a.ID=b.ID     where     a.ID= '+2;
    open;
  end;
执行以下程序:
      with   TAdoquery.Create(nil)   do
    Try
        ConnectionString:=   Str_Access;
        CLose;
        sql.Text   := 'delete     from   表1   where   ID=2   and   ID2=123 ';
        Execsql;        
    Finally
      Free;
    end;
    ado_Pb.Close;
    ado_PB.Open   ;
执行完成后,Access数据库表1中ID=1且ID2=123的数据已经删除了,可绑定在DbGridEH上的数据没有删除   ,还依然看到,可关闭窗口,在打开后,就没有了,请各位Access高手帮忙,谢谢!

------解决方案--------------------
用ADO连接MDB,操作有一定时间的延时,自己编一代码延时。删除后控件要刷新
------解决方案--------------------
--参考一下这个帖子

http://www.operdot.com/dispbbs.asp?boardid=14&id=29933&star=1


解决方法: 用JRO.JetEngine.RefreshCache就可以了