DB에 Insert하려는 아이템이 상당히 많을 경우..

이를 한꺼번에 insert할 수 있는 쿼리문 없을까요..

 

검색해보니..

 

Insert into 테이블명 values(); Insert into 테이블명 values();  Insert into 테이블명 values();

 

이런식이나..

 

Insert into 테이블명 values(), (), ();

 

이런식으로 할수도 있다고 하던데.. SQLite는 이게 지원이 안되는거 같더군요..

Insert into 테이블명 values(), (), ();

이건 아예 구문 에러나고..

 

Insert into 테이블명 values(); Insert into 테이블명 values();  Insert into 테이블명 values();

이건 젤 마지막 아이템만 삽입이 되네요..

 

파일에서 내용을 불러와 DB에 삽입해야 하는데..

이게 만단위로 넘어가니 속도가 상당히 오래 걸리네요..

 

로그찍어보니 파일에서 불러오는 속도는 상관이 없는데.. DB삽입하는 시간이 오래걸립니다..

참고로 지금은 sql쿼리문을 ArrayList로 만들어두고 반복문 돌려서 하고 있구요..

 

public void execSQL(ArrayList<String> sqlList){
       SQLiteDatabase db = openDB();
       int listLength = sqlList.size();
  
       for(int i=0; i<listLength; i++)
            db.execSQL(sqlList.get(i));
  
       db.close();
 }

 

이런식으로 쓰고 있습니다.

 

좀더 빠르게 하는 방법 없을까요,,