이전에 비슷한 질문과 다ㅏㅂ변글이 있어 알려드립니다.
참고하세요.
==========================================================================
나그네 님이 쓰신 글 :
: table하고 query컴포넌트중..어느것은 속도가 더 빠른가요..?
: 제가 책에서 보기에는 query컴포넌트가더 빠르다고 하던데요..
: 실질적으로 해보면...
: table이 더 빠른것 같네요..
: 제가 인터베이스디비에...한꺼번에...한 4만건을 넣어 봤거든요..
: table하고 query두개다 이용해봐서..
: 그런데...table이 헐씬 빠르네요...
:
: void __fastcall TForm1::Button1Click(TObject *Sender)
: FILE *fp;
: char str[256];
: int num;
: fp = fopen("log.txt", "r");
: if(fp == NULL){
: ShowMessage("file not found");
: }
: while(fgets(str, 256, fp) != NULL){
: toks = split(str, " ", 30, &num, 0);
: Query1->ParamByName("tmp1")->AsString = toks[0];
: Query1->ParamByName("tmp2")->AsString = toks[1];
: Query1->ParamByName("tmp3")->AsString = toks[2];
: Query1->ParamByName("tmp4")->AsString = toks[3];
: Query1->ParamByName("tmp5")->AsString = toks[4];
: Query1->ParamByName("tmp6")->AsString = toks[5];
: Query1->ParamByName("tmp7")->AsString = toks[6];
:
: Query1->ExecSQL();
: for(int i=0; i < num;i++)
: free(toks[i]);
: free(toks);
: }
: Query1->SQL->Clear();
: Query1->SQL->Add("select * from log");
: Query1->Open();
: }
: 이런식으로 넣으면 table이 더 빠르게 들어가더군요...
: 누가 그러던데..Param으로하는게 속도가 더빠르다고 하더군요..
: 그래서 파라미터를 이용해서 해봤구요..
: split함수는 제가 즐겨사용하는 문자열 자르는겁니다..
: 이 데이타가 지금은 5만건정도 되는데..음냐..엄청 시간이 많이 드는군요..
: 데이타만 넣는디...좀더 빠르게 데이타를 넣을수 있는 방법은 없나요..?
: