我正在创建一个逐行读取文件的应用程序,并将记录插入到数据库中。记录数量约为五十万。问题是整个过程大约需要两个小时。
我该怎样做才能加快这个过程?
public long insertTable(int id,String word) {
ContentValues wordValues = new ContentValues();
wordValues.put(COLUMN_D, id);
wordValues.put(COLUMN_WORD, word);
return this.sqliteDBInstance.insert(TABLE_ENGLISH, null, wordValues);
}
答案 0 :(得分:0)
将您的sql语句封装在 Transaction
中,它将极快地加速数据库操作。因为在使用SQLite Transaction时,只为整个操作创建了单个 journal-file
答案 1 :(得分:0)
我建议使用OrmLite 它使sqlite的生活更美好 希望有所帮助
答案 2 :(得分:0)
使用InsertHelper和交易。 InsertHelper非常高效,因为它使用编译语句并且您可以避免创建对象。在数据库事务中执行此操作,速度将快500倍。