我正在寫一個應用程序,它產生大量的數據存儲在數據庫中。在SQLite中填充表格的最快方式是什麼?
數據庫架構非常簡單:它只有一個只有4列的表格,但我必須填寫超過30000行。
我使用SQLite和QSql作爲API。
數據生成速度非常快(不眠),我使用QSqlQuery在時間插入一行。 但是,它似乎需要7-8秒來存儲100行(我使用QTime
進行計時)。
我試過使用QSqlTableModel
,但我注意到沒有性能改進,甚至每1000行調用QSqlTableModel::submitAll
(QTime
顯示1000行1000-7080秒)。
有什麼辦法可以更快地存儲行?使用SQLite填充表格的最快方法是什麼?
我不得不使用「COMMIT」而不是「END」,但它工作正常:事實上這是一個交易相關的問題。 – Emiliano 2011-05-09 10:46:07