with dm1.ADOQuery2 do
begin
sql.Clear;
sql.Add('select * from zj where bz='+'''美元''');
dm1.ADOQuery2.Open;
end;
由于adoquery2还要同步做其他工作,我要将查询的的记录将它存到一个变量或数组里,以便以后调用,
请问如何做?

解决方案 »

  1.   

    1.开个动态数组
    2.开个临时表
    var 
      TmpQuery:TAdoQuery;
    ----
    TmpQuery:=Tadoquery.Create(self);
    将结果存在这个临时表中就可以了.
    但是用完后记得要清掉它.
    TmpQuery.Free;
      

  2.   

    刚才想了一想,第2种方法我似乎行不通.:-((
    关于第1种方法例子:
    type
      TRecType=Record
        No:string[10];
        Date:string[10];
        Name:string[20];
      end; //对应数据库格式ArrType=array of TRecType //定义动态数组以上要在程序首Type中定义然后在事件中:var
      Arr1:ArrType;
    -----
    setlength(Arr1,临时存放的数量);访问用Arr1[i].No的方式
      

  3.   

    DBExpress 里有Data 和 Delta 属性
    ADO还没有!
    目前只有用数组了!
    Grid也许可以!
      

  4.   

    自己用程序动态创建一个ADOQuery,把记录集先存着,用时再拿出来,最后把它free掉得了。