데이터베이스에 저장할 많은 양의 데이터를 생성하는 응용 프로그램을 작성하고 있습니다.SQLite에서 테이블을 채우는 가장 빠른 방법은 무엇입니까?
DB 스키마는 매우 간단합니다. 4 열만있는 테이블이지만 30000 개가 넘는 행으로 채워야합니다.
API로 SQLite와 QSql을 사용하고 있습니다.
데이터가 매우 빠르게 생성되고 (절전 모드가 아님) QSqlQuery를 사용하여 시간에 행을 삽입합니다. 그러나 100 행을 저장하는 데 7-8 초가 걸리는 것으로 보입니다 (시간 계산에는 QTime
을 사용하고 있습니다).
QSqlTableModel
을 사용해 보았지만 아무런 성능 향상도 보이지 않았고 심지어 1000 행 (QTime
은 1000 행의 경우 70-80 초를 나타냄)을 QSqlTableModel::submitAll
이라고 부릅니다.
행을 더 빨리 저장할 수있는 방법이 있습니까? SQLite로 테이블을 채우는 가장 빠른 방법은 무엇입니까?
"끝"대신 "커밋"을 사용해야했지만 제대로 작동했습니다. 트랜잭션 관련 문제였습니다. – Emiliano