我想把ADOSQL查询后得到的记录读到一维数组中,如何操作

解决方案 »

  1.   

    var
      RecordValues: array[0..254] of string;...........
    RecordValues[0]:=adoquery1.fieldbyname('field1').asstring;
    ...........
      

  2.   

    var
      I, Count: Integer
    begin
     with adoQuery do
     begin
      DisableControl;
      First;
      Count := RecordCount;
      if Count > High(Array1) - Low(Array1) then
        Count := High(Array1) - Low(Array1);
      I := 0;
      while I < Count - 1 do
      begin
        Array1[I + Low(Array1)] := FieldByName('FieldName').Value;
        Next;
      end;  
     end;
    end;
      

  3.   

    var
      I, Count: Integer
    begin
      with adoQuery do
      begin
        DisableControl;
        try
        First;
        Count := RecordCount;
        if Count > High(Array1) - Low(Array1) then
          Count := High(Array1) - Low(Array1);
        I := 0;
        while I < Count - 1 do
        begin
          Array1[I + Low(Array1)] := FieldByName('FieldName').Value;
          Next;
        end;
        finally
          EnableControl;
        end;  
      end;
    end;