@Override public Cursor getCursor(SQLiteDatabase readableDatabase) { SQLiteQueryBuilder builder = new SQLiteQueryBuilder(); builder.setTables("orgs JOIN users ON (orgs.id = users.id)"); return builder .query(readableDatabase, new String[] { "users.id", "users.name", "users.avatarurl" }, null, null, null, null, null); }
@Override public Cursor getCursor(SQLiteDatabase readableDatabase) { SQLiteQueryBuilder builder = new SQLiteQueryBuilder(); builder.setTables("repos JOIN users ON (repos.ownerId = users.id)"); return builder.query(readableDatabase, new String[] { "repos.repoId", "repos.name", "users.id", "users.name", "users.avatarurl", "repos.private", "repos.fork", "repos.description", "repos.forks", "repos.watchers", "repos.language", "repos.hasIssues", "repos.mirrorUrl", "repos.permissions_admin", "repos.permissions_pull", "repos.permissions_push" }, "repos.orgId=?", new String[] { Integer.toString(org.id().intValue()) }, null, null, null); }
/** * Query tables for columns * * @param helper * @param tables * @param columns * @param selection * @param selectionArgs * @return cursor */ protected Cursor query(SQLiteOpenHelper helper, String tables, String[] columns, String selection, String[] selectionArgs) { SQLiteQueryBuilder builder = new SQLiteQueryBuilder(); builder.setTables(tables); return builder.query(helper.getReadableDatabase(), columns, selection, selectionArgs, null, null, null); }
@Override public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) { SQLiteQueryBuilder queryBuilder = new SQLiteQueryBuilder(); int uriType = sURIMatcher.match(uri); switch (uriType) { case SIMPLEENTITY_DIR: queryBuilder.setTables(TABLENAME); break; case SIMPLEENTITY_ID: queryBuilder.setTables(TABLENAME); queryBuilder.appendWhere(PK + "=" + uri.getLastPathSegment()); break; default: throw new IllegalArgumentException("Unknown URI: " + uri); } Database db = getDatabase(); Cursor cursor = queryBuilder.query(((StandardDatabase) db).getSQLiteDatabase(), projection, selection, selectionArgs, null, null, sortOrder); cursor.setNotificationUri(getContext().getContentResolver(), uri); return cursor; }
@Test public void shouldBeAbleToMakeQueries() { Cursor cursor = builder.query(database, new String[] {"rowid"}, null, null, null, null, null); assertThat(cursor.getCount()).isEqualTo(2); }
@Test public void shouldBeAbleToMakeQueriesWithGrouping() { Cursor cursor = builder.query(database, new String[] {"rowid"}, null, null, COL_GROUP, null, null); assertThat(cursor.getCount()).isEqualTo(1); }
@Override public Cursor query(Uri url, String[] projection, String selection, String[] selectionArgs, String sort) { SQLiteQueryBuilder qb=new SQLiteQueryBuilder(); qb.setTables(TABLE); String orderBy; if (TextUtils.isEmpty(sort)) { orderBy=Constants.DEFAULT_SORT_ORDER; } else { orderBy=sort; } Cursor c= qb.query(db.getReadableDatabase(), projection, selection, selectionArgs, null, null, orderBy); c.setNotificationUri(getContext().getContentResolver(), url); return(c); }
@Override public Cursor query(Uri url, String[] projection, String selection, String[] selectionArgs, String sort) { SQLiteQueryBuilder qb=new SQLiteQueryBuilder(); qb.setTables(TABLE); String orderBy; if (TextUtils.isEmpty(sort)) { orderBy=Constants.DEFAULT_SORT_ORDER; } else { orderBy=sort; } Cursor c= qb.query(db.getReadableDatabase(), projection, selection, selectionArgs, null, null, orderBy); c.setNotificationUri(getContext().getContentResolver(), url); return(c); }
@Test public void shouldBeAbleToMakeQueriesWithSelection() { Cursor cursor = builder.query(database, new String[] {"rowid"}, COL_VALUE + "=?", new String[] {"record1"}, null, null, null); assertThat(cursor.getCount()).isEqualTo(1); assertThat(cursor.moveToNext()).isTrue(); assertThat(cursor.getLong(0)).isEqualTo(firstRecordId); }
public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) { String groupBy = null; switch (mUriMatcher.match(uri)) { case PERSON_ID: ... break; case PERSON_GENDER: groupBy = GENDER_COLUMN; case PERSON: SQLiteQueryBuilder builder = new SQLiteQueryBuilder(); builder.setTables(mPersonTable); builder.setProjectionMap(mProjectionMap); return builder.query(db, projection, selection, selectionArgs, groupBy, having, sortOrder, limit); default: break; } }
.query(mUserDbHelper.getReadableDatabase(), projection, selection, selectionArgs, null, null, sortOrder); Cursor cursor2 = builder .query(mDeviceDbHelper.getReadableDatabase(), projection, selection, selectionArgs, null, null, sortOrder); } else { cursor = builder.query(getReadableDatabase(uri), projection, selection, selectionArgs, null, null, sortOrder);
// The projection map is a hashmap of strings HashMap<String, String> MyProjectionMap; MyProjectionMap = new HashMap<String, String>(); // Add column mappings to the projection map MyProjectionMap.put(Tasks._ID, Tasks._ID); MyProjectionMap.put(Tasks.TITLE, Tasks.TITLE); [...] SQLiteQueryBuilder qb; qb.setTables("tasks"); qb.setProjectionMap(MyProjectionMap) // Then do your query Cursor c = qb.query(db, projection, ...)
final Cursor cursor = queryBuilder.query(db, projection, selection, selectionArgs, null, null, sortOrder, limit); return cursor;
final Cursor cursor = queryBuilder.query(database, projection, selection, selectionArgs, null, null, sortOrder);
Cursor c = qb.query(db, projection, selection, selectionArgs, null, null, orderBy);
public Cursor getInstructionsByRecipe(Uri uri) { SQLiteQueryBuilder queryBuilder = new SQLiteQueryBuilder(); queryBuilder.setTables(RecipeTable.TABLE + ", " + RecipeInstructionsTable.TABLE); queryBuilder.appendWhere(RecipeTable.ID + "='" + uri.getLastPathSegment() + "' AND " + RecipeInstructionsTable.RECIPE_ID + "=" + RecipeTable.ID); String[] projection = {RecipeInstructionsTable.NUM, RecipeInstructionsTable.DESCRIPTION, RecipeInstructionsTable.PHOTO}; SQLiteDatabase db = database.getReadableDatabase(); Cursor cursor = queryBuilder.query(db, projection, null, null, null, null, null); cursor.setNotificationUri(getContext().getContentResolver(), uri); return cursor; }
public Cursor getNoteByRecipe(Uri uri) { SQLiteQueryBuilder queryBuilder = new SQLiteQueryBuilder(); queryBuilder.setTables(RecipeTable.TABLE + ", " + RecipeNoteTable.TABLE); queryBuilder.appendWhere(RecipeTable.ID + "='" + uri.getLastPathSegment() + "' AND " + RecipeNoteTable.RECIPE_ID + "=" + RecipeTable.ID); String[] projection = {RecipeNoteTable.TEXT}; SQLiteDatabase db = database.getReadableDatabase(); Cursor cursor = queryBuilder.query(db, projection, null, null, null, null, null); cursor.setNotificationUri(getContext().getContentResolver(), uri); return cursor; }
public Cursor getIngredientsByRecipe(Uri uri) { SQLiteQueryBuilder queryBuilder = new SQLiteQueryBuilder(); queryBuilder.setTables(RecipeTable.TABLE + ", " + RecipeIngredientTable.TABLE); queryBuilder.appendWhere(RecipeTable.ID + "='" + uri.getLastPathSegment() + "' AND " + RecipeIngredientTable.RECIPE_ID + "=" + RecipeTable.ID); String[] projection = {RecipeIngredientTable.AMOUNT, RecipeIngredientTable.DESCRIPTION}; SQLiteDatabase db = database.getReadableDatabase(); Cursor cursor = queryBuilder.query(db, projection, null, null, null, null, null); cursor.setNotificationUri(getContext().getContentResolver(), uri); return cursor; }
private Cursor query(String selection, String[] selectionArgs) { SQLiteQueryBuilder qb = new SQLiteQueryBuilder(); qb.setTables(AUTODICT_TABLE_NAME); qb.setProjectionMap(sDictProjectionMap); // Get the database and run the query SQLiteDatabase db = sOpenHelper.getReadableDatabase(); Cursor c = qb.query(db, null, selection, selectionArgs, null, null, DEFAULT_SORT_ORDER); return c; }
@Override public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) { SqlArguments args = new SqlArguments(uri, selection, selectionArgs); SQLiteQueryBuilder qb = new SQLiteQueryBuilder(); qb.setTables(args.table); SQLiteDatabase db = mOpenHelper.getWritableDatabase(); Cursor result = qb.query(db, projection, args.where, args.args, null, null, sortOrder); result.setNotificationUri(getContext().getContentResolver(), uri); return result; }