如何刷新TDBGrid?

时间:2015-02-19 16:29:23

标签: delphi delphi-xe7 tdbgrid

我有一个名为myDbGrid的TDBGrid,我想在更改数据库后更新(插入/更新/删除)。如果不完全重新加载表单,我怎么能这样做呢?

myDbGrid使用myDataSource,并使用myQry作为其数据集。

我尝试过以下方法但没有成功:

myDbGrid.Refresh;

myDbGrid.DataSource.DataSet.Close;
myQry.Close; // '' I think this is redundant
myQry.Open;
myDbGrid.DataSource.DataSet.Refresh;

我错过了什么?

(我会注意到tDBGrid中没有发生数据库更改 - 它只在那里显示)

3 个答案:

答案 0 :(得分:5)

这里唯一需要的代码是:

myDbGrid.DataSource.DataSet.Refresh; 

在这种特殊情况下,其他一切都是多余的。

答案 1 :(得分:0)

您可以尝试以下代码:

ADOQuery.SQL.Clear;
ADOQuery.SQL.Add('select* from table_name');
ADOQuery.Open;

答案 2 :(得分:0)

我正在使用 ADOQuery,所以我做到了:

ADOQuery1.Active := False;
ADOQuery1.Active := True;