if edit1.text='' then exit;
   adoquery1.ConnectionString :='Provider=Microsoft.Jet.OLEDB.4.0;Data Source= '+ ExtractFilePath(Application.Exename)  + 'data\data.mdb;'  ;
   adoquery1.SQL.Clear ;
   adoquery1.Close ;
   s:= 'select * from qz where 群组=''' +edit1.text+''''    ;
   adoquery1.SQL.Add(s);
   adoquery1.Open  ;
   i:=adoquery1.RecordCount  ;
   adoquery1.SQL.Clear ;  //出错的地方,我使用的是5.0 为什么会出错? 
   adoquery1.Close ;
  if  i<1 then
    begin
     
     s:= 'insert into qz(群组) values('''+ edit1.text+''')' ;
     adoquery1.SQL.Add(s);
     adoquery1.ExecSQL ;
     form2.ComboBox1.Items.Add (edit1.text);
     form4.Close ;
    end  ;
end;

解决方案 »

  1.   

    adoquery1.Close ; //应该把这句放在前面adoquery1.SQL.Clear ;  //出错的地方,我使用的是5.0 为什么会出错? 
      

  2.   

    adoquery1.SQL.Clear ;
    adoquery1.Close ;
    =>
    adoquery1.Close ;
    adoquery1.SQL.Clear ; 
      
      

  3.   

    先关闭试试
    adoquery1.Close;
    adoquery1.sql.clear;
      

  4.   

    不行,还是错,提示“bof 或eof中有一个是真,或当间的记录被删除,所需要操作需要一个当前记录”数据库是空的,i=0;请帮忙解决一下,很急,在线给分
      

  5.   

    你不行的话可以换成用一个adoconnection 来做的,如何。
      

  6.   

    结果一样 adoconnect,adodataset,adotable 都是这个问题
      

  7.   

    adoquery1.close;
    adoquery1.SQL.Clear;不行,还是错,提示“bof 或eof中有一个是真,或当间的记录被删除,所需要操作需要一个当前记录”数据库是空的,i=0;请帮忙解决一下,很急,在线给分
    出错的原因:这是DELPHI5的一个BUG,你可能没有升级,升级之后就没有这个问题了!
      

  8.   

    同意楼上的,DELPHI5的ado是有bug的,升级就可以了。