0
對於我的應用程序,我需要查詢大約40-50次的sqlite數據庫。我確信我寫的代碼效率很低。不幸的是,我無法在網上找到很多涉及多次查詢數據庫的例子。如何在Android上多次高效地查詢sqlite數據庫
String[] entryValArray = new String[indicesList.size()];
DBHelper dbHelper = new DBHelper(MainActivity.context);
SQLiteDatabase db = dbHelper.getReadableDatabase();
for (int i = 0; i < indicesList.size(); i++) {
int moddedIndex = Integer.parseInt(indicesList.get(i), 16) % DBHelper.numEntries;
String queryStr = "select * from " + DBHelper.TBL_NAME + " where " + DBHelper.IDStr +
" = " + Integer.toString(moddedIndex);
Cursor cursor = db.rawQuery(queryStr, null);
if (cursor.moveToFirst())
entryValArray[i] = cursor.getString(1);
cursor.close();
}
基本上,我正在一個字符串列表,將它們轉換爲十六進制值,然後改裝的價值得到一個索引SQLite數據庫。這是一個密碼生成器應用程序。
有沒有更好的方法來做到這一點,尤其是關於創建一個遊標然後在每次迭代中關閉它。
這取決於你在表格中有多少行,如果你有大約100行,你可以一次加載一個Map中的整個數據,只是檢索。 –
您是否真的測量了需要多長時間? –