我用AdoQuery删除选中的数据时提示:CommandText does not return a result setwith DM1.AdoQTmp do
begin
  Close;
  SQL.Text := 'delete * from t_1 where......'        (条件省略)
  Open;
end;在另一段代码里用同样的方法却是正确的,这是怎么回事呢???

解决方案 »

  1.   

    with DM1.AdoQTmp do
    begin
      Close;
      SQL.Text := 'delete * from t_1 where......'        (条件省略)
      //Open;
      ExecSQL;
    end;
      

  2.   

    执行ExecSQL后,再重新SELECT * FROM T_L 就可以看到更新后的结果了
      

  3.   

    open改成ExecSQL就没有问题了
      

  4.   

    不能用open,用ExecSQL就可以了。
      

  5.   

    with DM1.AdoQTmp do
    begin
      Close;
      sql.clear;//////////////////////////////////
      SQL.Text := 'delete * from t_1 where......'        (条件省略)
      Open;
    end;
      

  6.   

    with DM1.AdoQTmp do
    begin
      Close;
      sql.clear;//////////////////////////////////
      SQL.Text := 'delete  from t_1 where......'        (条件省略)
      Open;
    end;
    把*好去掉
      

  7.   

    delete,update,insert用ExecSQL来执行
    select用Open来执行
      

  8.   

    with DM1.AdoQTmp do
    begin
      Close;
      sql.clear;
      SQL.Text := 'delete t_1 where......'        (条件省略)
      ExecSQL;
    end;