Q&A

  • 데이터 베이스를 불러와서 해당하는 데이터 내용을 삽입하고 싶습니다.
안녕하세요.

select id from table

위와 같은 쿼리문을 입력한 SQLQuery 컴포넌트를 작성하고,

이 컴포넌트를 이용하여 해당하는 모든 내용을 변수나 배열에 입력하려고 합니다.

어떻게 해야 할지 좀처럼 감이 안잡혀 질문드립니다.

while 문으로 해당하는 데이터가 있을때까지 순환시킨후

해당 값을 넣으면 될거 같은데, 하는 방법을 잘 모르겠어요.

죄송한데, 간단한 예제라도 보여주시면 정말 감사하겠습니다. ^^

2  COMMENTS
  • Profile
    하얀까마귀 2005.05.16 21:55
    안녕하세요 하얀까마귀 입니다.

    변수를 어떤형태로 하느냐에 따라 조금은 다르겠네요. 그냥 TStringList에 입력하는걸로 하죠..


    <!--CodeS-->
    // 미리 정의해 둬야 겠죠?
    var
      cIdList : TStringList;

    procedure TForm1.Create;
    begin
      cIDList := TStringList.Create;
    end;
    procedure TForm1.Destroy;
    begin
      cIDList.Free;
    end;


    procedure LoadIDFromQuery;
    begin
      if ( Query1.Active ) and ( Query1.RecordCount > 0 ) then
      begin
        cIDList.Clear;
        Query1.First;

        while not Query1.Eof do
        begin
          cIDList.Add( Query1.FieldbyName('ID').AsString);
          Query1.Next;
        end;
      end;
    end;
    <!--CodeE-->

    컴파일 해보거나 한건 아니니까 좀 오타가 있을수 있으니 참고하세요.

    그냥 while문에서 하나씩 다음 레코드를 검사하면서 list에 넣어주시면 됩니다.
    그럼..


  • Profile
    김종윤 2005.05.16 23:35
    답변 감사합니다. ^^

    이해하기 쉽게 설명해 주셨는데요

    제가 BDE컴포넌트를 사용하지 않고, dbExpress를 사용해서

    잘 적용하기 힘드네요 ^^

    아... 데이터셋을 이용하니 하얀까마귀님 말씀대로 잘되더군요. ^^

    정말 고맙습니다.