with ADOQuery1 do
  begin
    SQL.Clear;
    SQL.Add('select * from 基本信息');
    Prepared;
    //ExecSQL;去掉
    Open;
  end;

解决方案 »

  1.   

    动态查询要先光闭数据库;
    if ADOQuery1.Active=true then
      ADOQuery1.Active=false;
    with ADOQuery1 do
      begin
        SQL.Clear;
        SQL.Add('select * from 基本信息');
        Prepared;
        ExecSQL;
        Open;
      end;
      

  2.   

    procedure TForm1.btn_QueryClick(Sender: TObject);
    begin
      case ComboBox2.ItemIndex of
        0: sign:='=';
        1: sign:='>';
        2: sign:='<';
        3: sign:='>=';
        4: sign:='<=';
        5: sign:=' like ';
      end;
      case ComboBox1.ItemIndex of
        3,8,9,10,11: fstr:='select * from 基本信息 where(%s%s#%s#) order by %s';
      else fstr:='select * from 基本信息 where(%s%s''%s'') order by %s';
      end;
    if ADOQuery1.Active=true then
      ADOQuery1.Active:=false;
    with ADOQuery1 do
      begin
        SQL.Clear;
        SQL.Add(Format(fstr,[ComboBox1.Text,sign,Edit1.Text,ComboBox1.Text]));
        Prepared;
        ADOQuery1.Active:=true;
      end;
    end;就是这一段,我加上去了还是不行呀!
      

  3.   

    这样写就可以,试一下:with ADOQuery1 do
      begin
        Close;    //关闭数据集
        SQL.Clear;
        SQL.Add('select * from 基本信息');
        Open;    //打开
      end;
      

  4.   

    提示什么错误?还是ADOQuery1:Cannot perform this operation on a closed dataset吗?
      

  5.   

    with adoquery1 do
    begin
     close;
     sql.clear;
     sql.add('......');
     open;
    end;
    就可以了
      

  6.   

    提示什么错误?
    还是ADOQuery1:Cannot perform this operation on a closed dataset吗?
      

  7.   

    只有对数据的更新操作(如insert,update,delete)时,才用到Execsql;
    对数据的查询(select等),用open。
      

  8.   

    我靠,晚了.kmstart(星星)说的很对,告诉你错在了那里/
      

  9.   

    我全改了一下现在这个过程只有一个语句:ADOQuery1.close;都会出同样的错误。
      

  10.   

    你是不是在别的地方把它关掉,应该没错的!你SQL语句有没问题!
      

  11.   

    程序一起动我给它设了SQL语句,并且正常显示,但我执行一查询时就成了这样。
      

  12.   


    open(有返回的)execsql(没有返回的)两个只能用一个的。
      

  13.   

    with ADOQuery1 do
      begin
        Close;
        SQL.Clear;
        SQL.Add('select * from 基本信息');
        Prepared;  
        Open;
      end;
      

  14.   

    注意,你的ADOQuery1.Connection 连了吗?
      

  15.   

    with ADOQuery1 do
      begin
        Close();
        SQL.Clear;
        SQL.Add('select * from 基本信息');
        Prepared;
        //ExecSQL;去掉
        Open;
      end;^_^