編集: 問題は解決しました。クエリは正しいです。私の問題は; 私はローカルデータベースで作業しています。また、アセットフォルダーから直接データベースにアクセスすることはできません。私のコードは、データベースがSDカードに存在しない場合に、アセットフォルダーからSDカードにデータベースをコピーします。したがって、私のデータベースの変更は、資産フォルダー内のデータベースにのみ影響します。そして、古いデータベースで正しいクエリを試しました。質問してすみません。
DB Browser for SQLiteでSQLite クエリを試してみましたが、うまくいきました。
しかし、Android では同じクエリが機能しませんでした。
String[] a = new String[1];
a[0] = yazilanKelime + '%';
Cursor friendCursor = db.rawQuery( "SELECT * FROM kelimeler WHERE kelime LIKE ? ORDER BY sayi DESC LIMIT 10", a);
「ORDER BY sayi DESC」の部分を削除すると、うまくいきます。私はどこで間違っていますか?
更新: この例外を返します: android.database.sqlite.SQLiteException: そのような列はありません: sayi (コード 1): 、コンパイル中: SELECT * FROM kelimeler WHERE kelime LIKE ? ORDER BY sayi DESC LIMIT 10
DB スキーマ: