with TQuery.Create(Application) do
  try
    try
      Close;
      SQL.Clear;
      DatabaseName := DatabaseName;
      SQL.Add('delete from table1');
      ExecSQL;
     //如何得到影响的行数
      except
        on E: Exception do
        begin
          MessageDlg( '失败:' + #13#10#10 + e.Message, mtWarning, [mbOK], 0 );
        end;
      end;
  finally
    Close;
    Free;
  end;

解决方案 »

  1.   

    var
    i:integer;
    i:=ExecSQL;
    showmessage('影响行数:'+inttostr(i));
      

  2.   


    这样不行的哦ExecSQL是一个procedure啊...没有返回值的
      

  3.   

    i:=ExecSQL; 
    这算是什么意思/?
      

  4.   


        with Ado do
         begin
            Close;
            Sql.Clear;
            Sql.Add('INSERT INTO Table ... ');
            Showmessage(IntToStr(Execsql));
        end;使用Adoquery的ExecSql可以返回受影响的行数。
      

  5.   

    没看清,是TQuery
    用TAdoQuery可以那么写
      

  6.   

    唉,关键是不能用TAdoQuery啊.....看来是TQuery就没这功能啊...