// 샘플 테이블 데이터 채우기
CST := m_SFL.CST;
for i:=0 to m_SFL.CurveCount-1 do begin
m_adot.TableName := TableName;
m_adot.Open;
CSV := m_SFL.CSV[i];
for j:=0 to m_SFL.CSVCount-1 do begin
m_adot.AppendRecord([ nil, CST[j], CSV[j]]);
end;
m_adot.Close;
end;
바깥쪽 for loop 가 3번이고 안쪽 for loop가 500회 정도 반복입니다.
그래서 합이 1500정도 인데 이 1500개의 데이터를 집어넣는데 20초 정도의
시간이 걸립니다. ㅠ.ㅠ
그렇게 느린 컴퓨터는 아닌데 왜케 db 인서트 속도가 느리지요?
원래 mdb 속도가 이정도 밖에 안나오는 건가요?
느릴꺼라곤 예상했지만 이건 좀 정도가 심하네요.
빨리 입력하거나 한꺼번에 입력시킬 팁이 있다면 좀 가르쳐 주세요.
그렇게까지 느릴까요?
2만건정도를 넣을때 1분30초정도 걸렸던거 기억이 납니다..
물론, 대량의 data를 넣을때 Index를 drop 시키고 넣었습니다.
모두 Insert 시킨 후에 Index를 생성해 줬구요
그 정도 넣을때에 그렇게 오래 걸릴지는 모르겠네여..
H/W, OS의 문제가 아니라면... 그렇게 느리지 않을 듯 합니다..
혹시, Index가 걸려있는 상황에서 Insert를 시키고 계시는게
아닌지.. 확인해 보시기 바랍니다..
대량 Data를 넣을때에는 확실히 Index를 Drop시키고
Data를 모두 넣은 다음에 Create 시키는게 좋을 겁니다..
다시말해서, Insert시에 나타날 수 있는 Overhead적 요소를를
모두 없애라는 뜻입니다..
답이 되었길 바랍니다..