tutorial - ¿Cómo realizar una consulta SQLite dentro de una aplicación de Android?
sqliteopenhelper (5)
Intento utilizar esta consulta en mi base de datos de Android, pero no devuelve ningún dato. ¿Me estoy perdiendo de algo?
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;
Alternativamente, existe db.rawQuery (sql, selectArgs).
Cursor c = db.rawQuery(select, null);
Esto también funcionará si el patrón que desea combinar es una variable.
dbh = new DbHelper(this);
SQLiteDatabase db = dbh.getWritableDatabase();
Cursor c = db.query("TableName", new String[]{"ColumnName"}
, "ColumnName LIKE ?" ,new String[]{_data+"%"}, null, null, null);
while(c.moveToNext())
{
// your calculation goes here
}
Esto te devolverá el cursor requerido
Cursor cursor = db.query(TABLE_NAME, new String[] {"_id", "title", "title_raw"},
"title_raw like " + "''%Smith%''", null, null, null, null);
Intenta esto, esto funciona para mi nombre de código es una cadena:
cursor = rdb.query(true, TABLE_PROFILE, new String[] { ID,
REMOTEID, FIRSTNAME, LASTNAME, EMAIL, GENDER, AGE, DOB,
ROLEID, NATIONALID, URL, IMAGEURL },
LASTNAME + " like ?", new String[]{ name+"%" }, null, null, null, null);
Vine aquí para recordarle cómo configurar la consulta, pero los ejemplos existentes eran difíciles de seguir. Aquí hay un ejemplo con más explicación.
SQLiteDatabase db = helper.getReadableDatabase();
String table = "table2";
String[] columns = {"column1", "column3"};
String selection = "column3 =?";
String[] selectionArgs = {"apple"};
String groupBy = null;
String having = null;
String orderBy = "column3 DESC";
String limit = "10";
Cursor cursor = db.query(table, columns, selection, selectionArgs, groupBy, having, orderBy, limit);
Parámetros
-
table
: el nombre de la tabla que desea consultar -
columns
: los nombres de las columnas que desea devolver. No devuelva datos que no necesita. -
selection
: los datos de fila que desea devueltos de las columnas (Esta es la cláusula WHERE). -
selectionArgs
: ¿Esto se sustituye por?
en la cadena deselection
anterior. -
groupBy
andhaving
: este grupo duplica los datos en una columna con datos que tienen ciertas condiciones. Cualquier parámetro innecesario puede establecerse como nulo. -
orderBy
: ordenar los datos -
limit
: limitar el número de resultados a devolver