자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)

본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 다른 분들도 참고할 수 있도록 결과 댓글 필수(또는 감사 댓글)
(결과 댓글을 달지 않는 경우 다음 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)
-----------------------------------------------------------------------------------------------

안녕하세요.

txt반출하는 속도가 너무 안나서 조언을 듣고자 문의드립니다.

 

DB에 있는 고객별 로우데이타를 조회화면에서 txt로 저장하는 프로그램을 만들고 있습니다.

건수가 대략 30만건되어 FDMEMTable을 이용하여 cxGrid와 연결하여 조회는 되었는데요.

cxGrid에서 직접 txt로 반출을 하면 자료가 많다보니 에러가 발생하더군요.

그래서 FDMEMTable 데이타를 직접읽어 TXT로 반출을 했는데 대략 40분정도가 소요됩니다.

40분이나 되다보니 어쩔수 없이 사용자에게 요청올때마다 쿼리로 뽑아주고 있습니다.

 

txt반출속도를 빠르게 하는 방법이 있을까요?

아래는 txt로 반출하는 샘플코드입니다.

속도개선에 대한 의견이 있으시면 주저없이 댓글해주세요

감사합니다. ^^

 

-----------------------------------------------------------------------

 

   if not CDS3.Active then
     Exit;

   try
      AssignFile(TxtF, 'C:\통계조회.txt');
      Rewrite(TxtF);
      StrData :=  '가입매장브랜드'+'|'+
                  '가입매장코드'+'|'+
                  '가입매장명'+'|'+
                  '고객번호'+'|'+
                  '문자수신여부'+'|'+
                  '발송매장브랜드'+'|'+
                  '발송매장'+'|'+
                  '발송매장명'+'|'+
                  '발송유무'+'|'+
                  '약관동의'+'|'+
                  '개인정보동의'+'|'+
                  '마케팅동의'+'|'+
                  '적립포인트'+'|'+
                  '포인트사용유무'+'|'+
                  '사용포인트'+'|'+
                  '내용';
      WriteLn(TxtF, StrData);

      i := 0;
      iNa := 0;
      with CDS3 do
      begin
         CDS3.First;
         while not eof do
         begin

           StrData := FieldByName('가입매장브랜드').AsString+'|'+
                      FieldByName('가입매장코드').AsString+'|'+
                      FieldByName('가입매장명').AsString+'|'+
                      FieldByName('고객번호').AsString+'|'+
                      FieldByName('문자수신여부').AsString+'|'+
                      FieldByName('발송매장브랜드').AsString+'|'+
                      FieldByName('발송매장').AsString+'|'+
                      FieldByName('발송매장명').AsString+'|'+
                      FieldByName('발송유무').AsString+'|'+
                      FieldByName('약관동의').AsString+'|'+
                      FieldByName('개인정보동의').AsString+'|'+
                      FieldByName('마케팅동의').AsString+'|'+
                      FieldByName('적립포인트').AsString+'|'+
                      FieldByName('포인트사용유무').AsString+'|'+
                      FieldByName('사용포인트').AsString+'|'+
                      FieldByName('내용').AsString;
           WriteLn(TxtF, StrData);
           next;
         end;
      end;

      CloseFile(TxtF);

      ShowMessage(pChar('C:통계조회.txt 로 저장되었습니다.'));
   except on E: Exception do
      begin
         ShowMessage('TXT파일이 저장되지 않았습니다.');
      end;
   end;
 

번호 제목 글쓴이 날짜 조회 수
공지 [프로그래밍 강의] 2021.6~2021.12 관리자 2015.01.22 15766
공지 유용한 관련 사이트 관리자2 2014.03.20 54580
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 97985
1893 RIO 리눅스 지원 질문 [1] 가나당 2019.02.21 113
1892 델파이 설치관련. [2] 개미 2019.03.06 114
1891 블랙스크린 file 넓다란세상 2019.03.30 114
1890 비콘 여러개를 잡아 거리값을 출력하는 소스나 참고할 자료가 있을까요? 손태희 2019.05.06 114
1889 Edit options font관련건 [1] file 김하나 2016.01.12 114
1888 ODBC 조합형으로 한글 처리 가능한지요? file 천공인 2017.05.20 115
1887 개발자 기술자료의 동영상 링크가 안되는게 너무 많습니다. [2] 노력하는삶 2020.02.05 115
1886 리눅스서버에 미들웨어 서버 실행과 관련하여 궁금한 사항이 있습니다. 루키 2020.03.06 115
1885 [10.3.3 브리핑] 출시 후 로드맵이 변경되었나요? 험프리 2019.12.05 116
1884 코로나19 세미나 관련 DB오류 질문드립니다. file 유정 2020.06.25 116
1883 Report 컴포넌트 관련 질문입니다. 흥배 2015.11.19 116
1882 서비스 프로그램 디버깅 맛재현 2020.11.12 116
1881 DXE2 에서와 DXE10.2 에서 동작이 다릅니다. [1] file DarkRyu 2017.06.06 117
1880 FDLocalSql사용시 쿼리결과에 한글이 제대로 표시되지 않습니다. [1] 왕초보 2017.10.20 117
1879 [10.3 리오 출시 세미나] 이전버전에서 ui에서 컨트롤 다중선택시 포인트 에러나는거 잡혔나요? 험프리 2018.11.26 117
1878 Comport Lib XE2 찾아요 [1] 가나다 2019.03.22 117
1877 FMX TLang에서 Hard coded 된 문자열 변환 [1] VT 2019.02.20 118
1876 android API file leejh 2015.12.14 118
1875 Datasnap Callback에서 문제 파란하늘 2017.06.01 119
1874 Rest 클라이언트 Post방법 질문합니다. [2] 루피 2017.03.29 119