Ich schreibe eine Funktion für eine Android-App, die die ersten 8 Einträge (Namen der Städte) einer Datenbank erhalten soll, die eine Zeichenfolge entsprechen.Verwenden von LIKE und LIMIT in sqlite Abfragen in Android
Dies ist meine Frage:
Cursor cursor = database.rawQuery(
"SELECT " + CITIES_NAME +
" FROM " + TABLE_CITIES +
" WHERE " + CITIES_NAME +
" LIKE " + String.format("%s%%", nameLetters) +
" LIMIT " + 8
, null);
Dies ist der resultierende Fehler:
android.database.sqlite.SQLiteException: near "LIMIT": syntax error (code 1): , while compiling: SELECT city_name FROM CITIES WHERE city_name LIKE berl% LIMIT 8
Ich habe bereits andere Fragen auf der Plattform ausgecheckt, konnte aber keine Lösung mir nicht finden helfen. Die Datenbank wird korrekt getestet und erstellt und der Sucheintrag befindet sich in der Datenbank.
Kann jemand helfen?
Funktioniert es ohne das Bit '=?'? – Isaac
Danke, ich habe es entfernt (siehe Update oben). Aber das Problem ist immer noch vorhanden. – Yonjuni
Ich denke, Sie brauchen Zitate um die gleiche Zeichenfolge zB LIKE 'berl%' LIMIT 8 – Isaac