私はAndroidで辞書アプリケーションを作成しようとしています。私は80000の記事のデータベースを持っています。Android SQLite非常に遅い検索
public Cursor query(String entry){
String[] columns = new String[]{"_id", "word"};
String[] selectionArgs = new String[]{entry + "%"};
return mDB.query("word", columns, "word LIKE ?", selectionArgs, null, null, null);
}
と私はListViewコントロールのためSimpleCursorAdapterを使用します。ユーザーはEditText
に単語を入力すると、私は次のコードを使用することを行うには、リストビューでの提案を示したいと思います。
問題は非常に遅れて表示されることです。私はその理由がSQLでLIKE
だと思う。私はそれを行うための他の方法を知らない。提案を取得するパフォーマンスを向上させるためにできることはありますか?
単語フィールドの大きさはどれくらいですか? –
あなたは各記事のためのキーワードと別のテーブルを持って、そこにあなたの検索をする必要があります。それ以外の場合は助けてくれません。 –
@coderdem提示する予定の提案はいくつありますか?それは単純なオートコンプリートな機能になるだろうか?または、_suggestions_結果リストに何千もの検索結果を表示しようとしていますか?後者でない場合は、なぜ_limit_を使用しないのですか? –