Ich versuche, diese Abfrage für meine Android-Datenbank zu verwenden, sie gibt jedoch keine Daten zurück. Vermisse ich etwas
SQLiteDatabase db = mDbHelper.getReadableDatabase();
String select = "Select _id, title, title_raw from search Where(title_raw like " + "'%Smith%'" +
")";
Cursor cursor = db.query(TABLE_NAME, FROM,
select, null, null, null, null);
startManagingCursor(cursor);
return cursor;
android
sqlite
android-sqlite
Dennie
quelle
quelle
Antworten:
Dies gibt Ihnen den gewünschten Cursor zurück
quelle
null
wenn Sie möchten, dass diewhere
Bedingung "alles" ist?..., "title_raw like ?", new String[]{"'%Smith%'"}, ...
. Quelle: Android-Dokumentation .Alternativ existiert db.rawQuery (sql, selectionArgs).
Cursor c = db.rawQuery(select, null);
quelle
Dies funktioniert auch, wenn das Muster, mit dem Sie übereinstimmen möchten, eine Variable ist.
quelle
Ich kam hierher, um mich daran zu erinnern, wie die Abfrage eingerichtet wird, aber die vorhandenen Beispiele waren schwer zu befolgen. Hier ist ein Beispiel mit mehr Erklärung.
Parameter
table
: Der Name der Tabelle, die Sie abfragen möchtencolumns
: Die Spaltennamen, die zurückgegeben werden sollen. Geben Sie keine Daten zurück, die Sie nicht benötigen.selection
: Die Zeilendaten, die von den Spalten zurückgegeben werden sollen (Dies ist die WHERE-Klausel.)selectionArgs
: Dies wird?
in derselection
obigen Zeichenfolge ersetzt.groupBy
undhaving
: Diese Gruppe gruppiert doppelte Daten in einer Spalte mit Daten mit bestimmten Bedingungen. Nicht benötigte Parameter können auf null gesetzt werden.orderBy
: sortiere die Datenlimit
: Begrenzen Sie die Anzahl der zurückzugebenden Ergebnissequelle
Versuchen Sie dies, dies funktioniert für meinen Codenamen ist ein String:
quelle