现在遇到一个TDBGrid数据刷新的问题:
用TDBGrid控件显示从数据库中查询出来的数据,然后往数据库中插入一条,现在就是想插入完数据后,TDBGrid控件中显示的数据为最新数据。试过在插入操作之后调用TDBGrid的Refresh方法,但没效果。哪位能指点下,谢谢
用TDBGrid控件显示从数据库中查询出来的数据,然后往数据库中插入一条,现在就是想插入完数据后,TDBGrid控件中显示的数据为最新数据。试过在插入操作之后调用TDBGrid的Refresh方法,但没效果。哪位能指点下,谢谢
我是TDBGrid绑定DataSource的,自动查出数据,没用到adoquery,用什么别的办法吗?
procedure TForm10.addStaffBtnClick(Sender: TObject);
var
ADOQuery1: TADOQuery;
strSQL: string;
begin
strSQL := 'select * from staff';
ADOQuery1 := TADOQuery.Create(self);
ADOQuery1.Connection := ADOConnection1;
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add(strSQL);
ADOQuery1.Open;
ADOQuery1.First;
if (Edit1.Text = ADOQuery1.FieldByName('id').AsString) then
begin
showMessage('There is a same ID');
end
else begin
ADOQuery1.Append;
ADOQuery1.FieldByName('id').AsString := Edit1.Text;
ADOQuery1.FieldByName('name').AsString := Edit2.Text;
ADOQuery1.Post;
ADOQuery1.Next;
end;
ADOTable1.Refresh;
Edit1.Text := '';
Edit2.Text := '';
end;
把TDBGrid绑定的table关闭再重新打开就可以,谢谢各位!!