又是ADO控件数据更新问题!! 只要重新CLOSE,OPEN一次就可以了。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 outer2000(天外流星) 说得没错 兄弟们,我也用了CLOSE与OPEN,但是不行呀!下面是我的具体代码(当然我已把我的问题简化了),大家可以亲手做一下。具体说明见问题开头的说明。多谢各位了。(adoquery1与adoquery2都连住同一个数据库)procedure TForm1.ButtonshowClick(Sender: TObject);//查找显示所有记录的过程begin adoquery1.Close; adoquery1.SQL.Clear; adoquery1.sql.add('select * from 信息表'); adoquery1.Open;end;procedure TForm1.ButtondeleteClick(Sender: TObject);//删除记录的过程begin adoquery2.Close; adoquery2.SQL.Clear; adoquery2.SQL.Add('delete from 信息表 where 用户姓名="' + adoquery1.fieldbyname('用户姓名').AsString + '"'); adoquery2.ExecSQL; Buttonshow.Click; //用ADOQUERY2删掉记录后调用Buttonshow.Click,试图重新显示删掉记录后的所有数据,但结果得到的还是未删掉记录前的结果,必须手工再按Buttonshow dbgrid1.Refresh;end;procedure TForm1.Button3Click(Sender: TObject);begin adoquery1.Delete; {在这里真接用adoquery1对选取的记录进行删除,dbgrid1内容马上就刷新成删掉记录的样子,这里没问题。问题就在用adoquery2去删掉记录。}end; 这不是ado的问题,是你的问题,你用bde这样做还不是一样的效果 adoquery1和adoquery2是两个数据集,你刷新adoquery1,adoquery2怎么会变呢?看看你的CursorLocation和CursorType属性吧,他们分为:服务器端,客户端,动态和静态等,李维的书上讲得很清楚 adoquery1.Refresh;你试一下(如果你选的包括主键的话) 把 Buttonshow.Click;改成 ButtonshowClick(nil);试试 delphi如何加载html资源? 关于建帐套,请教! 关于SPCOMM通信问题!! form间如何传递参数问题 求详细介绍delphi汇编的教程 使用ADOquery查询数据,提示数据类型不匹配,望赐教? 有关数据库的别名!各位多多指教! Tlist如何进行排序?(sort中的compare怎么设?) 这个错误应该如何解决?(多层次) 连续打印准确定位问题 我想做个三态的图象控件,但是对大一点的图片更新速度很慢,怎么解决呢? VC的d/v是不是太...?
begin
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.sql.add('select * from 信息表');
adoquery1.Open;
end;procedure TForm1.ButtondeleteClick(Sender: TObject);//删除记录的过程
begin
adoquery2.Close;
adoquery2.SQL.Clear;
adoquery2.SQL.Add('delete from 信息表 where 用户姓名="' + adoquery1.fieldbyname('用户姓名').AsString + '"');
adoquery2.ExecSQL;
Buttonshow.Click; //用ADOQUERY2删掉记录后调用Buttonshow.Click,试图重新显示删掉记录后的所有数据,但结果得到的还是未删掉记录前的结果,必须手工再按Buttonshow dbgrid1.Refresh;end;procedure TForm1.Button3Click(Sender: TObject);
begin
adoquery1.Delete;
{在这里真接用adoquery1对选取的记录进行删除,dbgrid1内容马上就刷新成删掉记录的样子,这里没问题。问题就在用adoquery2去删掉记录。}
end;
你试一下(如果你选的包括主键的话)
Buttonshow.Click;
改成
ButtonshowClick(nil);
试试