上面最后一条语句应该是:adoquery.active:=false;
怎么会错呢?

解决方案 »

  1.   

    procedure TForm22.SpeedButton2Click(Sender: TObject);
    label l;
    begin
    adoquery2.UpdateBatch ;
    k:=strtoint(edit2.Text);
    j:=1;
    p:=1;
    for i:=1 to k do
    begin
    adoquery1.First;
    ADOTable1.Insert;
    DBedit4.text:=DBEdit1.Text;
    q:=inttostr(j);
    dbedit5.text:=q;
    l:
    Randomize;
    adoquery1.MoveBy(random(adoquery1.RecordCount));
    dbedit6.text:=wwdbgrid1.Fields[0].Value; //读出专家编号
    ADOQuery3.Parameters.ParamByName('experts').Value:=dbedit1.text;
    datasource4.DataSet :=adoquery3;
    wwdbgrid3.DataSource :=datasource4;
    adoquery3.Active:=true;
    adoquery3.First;
    if adoquery3.Eof then
     begin
      adoquery3.Next;
       if wwdbgrid3.Fields[2].Value =dbedit6.text then
         begin
         goto l;
         end
       else
         begin
          j:=j+1;
          adoquery1.UpdateBatch ;
          adoquery3.Active :=false;
         end;
     end;
    end;
    end;
      

  2.   

    就在adoquery3.active:=false;出错的。
        
      

  3.   

    其实我的目的是为了让wwdbgrid里面的数据不断的更新!当数据库里面的数据更新时wwdbgrid里面总是不能立即显示出来,对wwdbgrid和adoquery Refresh都不行,为什么?
      

  4.   

    2个帖子同样有效!重要回答对了2个帖子的分都给
    leo555(狮子555):如果可以2个贴子的分都是你的。
      

  5.   

    leo555(狮子555):请到第二个贴子发两句话,好给分!谢谢!