如题
按下保存按钮后,后台数据库可以及时地显示插入的数据。
可是DBGrid中更新很慢,需要待下次运行的时候才能显示上次插入的数据。
我用的是ADOconnection,ADODataset连接数据库;ADOQuery设置SQL语句。
Table和Datasource供DBGrid显示数据库表的内容。
delphi连接的后台数据库为MS Access。
望高人赐教,谢谢!

解决方案 »

  1.   

    在更新完后加上这些就可以了
    table.DisableControls;
    table.refresh;
    table.EnableControls;
      

  2.   

    并非更新很慢,楼上的已经说了,要refresh的,否则dataset不会再去服务器取数据的,那样的话会很浪费资源的。建议直接用dataset更新,那样你就会看到你想看的效果了
      

  3.   

    如果你的DBGREID是在form1窗体,但你更新数据是在FORM2窗体的话会出现这种情况,并且用上面两人的方法都不行的,你可以把FORM2窗体的数据回传给FORM1在FORM1中更新数据,这样就可以解决了
      

  4.   

    table.Disable:=flase;
    table.refresh;
    table.Disable:=true;
      

  5.   

    对,不是慢,是dataset不会主动更新,需要你自己去更新