我用下面的查询号语句进行数据查询时会占用好大的内存,查询语句如下: Number :=Trim(edtNumber.Text);  Cond:='(1=1)';
  //查询条件  IF cbNumber.Checked Then //根据号码进行查询
  Begin
      Cond :=Cond +'AND (Number Like "'+Number+'%")';
  End;  With QueryMobileComplain Do
  Begin
    Close;
    Sql.Clear;
    Sql.Add('select * from MobileComplain Where'+Cond+' Order by ReportDate,Number ');
    Open;
  End;
应该怎样来进行内存的释放,各位高手请指点一二

解决方案 »

  1.   

    With QueryMobileComplain Do
      Begin
        Close;
    你CLOSE他就会释放。
      

  2.   

    我用了close,那么在DBGrid中显示的数据就不会出来了
      

  3.   

    1.要么不用DBgrid,而用StringGrid代替,这样可以即时close dataset;
    2.在你不需要dbgrid后再close dataset(典型如quit application时);
      

  4.   

    窗体关闭时,QueryMobileComplain.close;
    就释放了
    查询的时候,就是这样了