我在一个form里添加数据,另一个form里用adodataset和dbgrid显示表,
但是却无法自动刷新第一个表里加进去的记录。只有关闭程序重新打开才看得见加进去的记录。但是用table和dbgrid 却没有问题怎么回事啊??

解决方案 »

  1.   

    Refresh没有用的
    只能table.close然后在table.open
      

  2.   

    也可以使用一下方法
    1.ADODataSet1.close;
      ADODataSet1.open;
    2.使用ADOQuery,AdoQuery1.requery;
      

  3.   

    如果你俩个表是用一个dataset (table)
    那就必须先close ,然后在open ;
    如果不是,那只需要 dbgrid 显示数据的窗体中refresh 即可~~~
      

  4.   

    只有这个才有效,没有断开连接的话close与open没有作用的.
      ADODataSet1.Close;
      ADODataSet1.DisableControls;
      ADODataSet1.EnableControls;
      ADODataSet1.Open;
      

  5.   

    一开始form2并没有打开,要在form1上按button,form2才打开的。所以不存在adodataset1.close和open的情况,因为form2本身就关着的。关键是我打开form2时,记录没刷新。
      

  6.   

    用ADODataSet1.close;
      ADODataSet1.open;
    或使用ADOQuery,AdoQuery1.requery;