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; } }
// 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, ...)
case YOUR_URI: qb.setTables(YOUR_TABLE_NAME); qb.setProjectionMap(sYourProjectionMap); break;
public void setProjectionMap(Map<String, String> columnMap) { delegate.setProjectionMap(columnMap); }
private static final HashMap<String, String> PROJECTION_MAP = new HashMap<String, String>(); static { PROJECTION_MAP.put("_id", Symbol.COL_ID); PROJECTION_MAP.put(SearchManager.SUGGEST_COLUMN_TEXT_1, "col1 AS " + SearchManager.SUGGEST_COLUMN_TEXT_1); PROJECTION_MAP.put(SearchManager.SUGGEST_COLUMN_TEXT_2, "col2 AS " + SearchManager.SUGGEST_COLUMN_TEXT_2); PROJECTION_MAP.put(SearchManager.SUGGEST_COLUMN_INTENT_DATA_ID, "_id AS " + SearchManager.SUGGEST_COLUMN_INTENT_DATA_ID); } @Override public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) { SQLiteQueryBuilder builder = new SQLiteQueryBuilder(); builder.setTables("table"); builder.setProjectionMap(PROJECTION_MAP); return builder.query(db, projection, selection, selectionArgs, null, null, sortOrder); }
private SQLiteQueryBuilder createQueryBuilder() { SQLiteQueryBuilder qb = new SQLiteQueryBuilder(); qb.setTables(Clocks.TABLE_NAME); qb.setProjectionMap(PROJECTION_MAP); // TODO from API 14 on we could use strict mode // qb.setStrict(true); return qb; }
SQLiteQueryBuilder builder = new SQLiteQueryBuilder(); builder.setTables("Place"); Map<String, String> projectionMap = new HashMap<String, String>(); projectionMap.put(Place.COL_NAME, Place.COL_NAME+" AS " + SearchManager.SUGGEST_COLUMN_TEXT_1); projectionMap.put(Place.COL_ADDRESS, Place.COL_ADDRESS+" AS " + SearchManager.SUGGEST_COLUMN_TEXT_2); projectionMap.put("idPlace", "idPlace"+" AS " + SearchManager.SUGGEST_COLUMN_INTENT_DATA); projectionMap.put("_id", "_id"); builder.setProjectionMap(projectionMap); SQLiteDatabase db = clidbh.getWritableDatabase(); String[] fields = {"idPlace AS _id","name","address","idPlace"}; String where = "name like '%"+selectionArgs[0]+"%'"; row = builder.query(db, fields, where, null, null, null, "_id","3"); if (row == null) { return null; } else if (!row.moveToFirst()) { row.close(); return null; }
private Cursor query(final SQLiteDatabase db, SQLiteQueryBuilder qb, String[] projection, String selection, String[] selectionArgs, String sortOrder, String groupBy, String having, String limit, CancellationSignal cancellationSignal) { if (projection != null && projection.length == 1 && BaseColumns._COUNT.equals(projection[0])) { qb.setProjectionMap(sCountProjectionMap); } final Cursor c = qb.query(db, projection, selection, selectionArgs, groupBy, having, sortOrder, limit, cancellationSignal); if (c != null) { c.setNotificationUri(getContext().getContentResolver(), ContactsContract.AUTHORITY_URI); } return c; }
qb.setProjectionMap(projectionMap); appendAccountIdFromParameter(qb, uri);
... @Override public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) { SQLiteQueryBuilder builder = new SQLiteQueryBuilder(); builder.setTables(ToursDBOpenHelper.TABLE_TOURS); HashMap<String, String> columnMap = new HashMap<String, String>(); columnMap.put(BaseColumns._ID, ToursDBOpenHelper.COLUMN_ID + " AS " + BaseColumns._ID); columnMap.put(SearchManager.SUGGEST_COLUMN_TEXT_1, ToursDBOpenHelper.COLUMN_TITLE + " AS " + SearchManager.SUGGEST_COLUMN_TEXT_1); columnMap.put(SearchManager.SUGGEST_COLUMN_INTENT_DATA, ToursDBOpenHelper.COLUMN_ID + " AS " + SearchManager.SUGGEST_COLUMN_INTENT_DATA); builder.setProjectionMap(columnMap); dbhelper = new ToursDBOpenHelper(getContext()); //database = dbhelper.getReadableDatabase(); SQLiteDatabase db = dbhelper.getWritableDatabase(); cursor = builder.query(db, projection, selection, selectionArgs, null, null, sortOrder, null); return cursor; } ...
public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) { SQLiteQueryBuilder builder = new SQLiteQueryBuilder(); builder.setTables(table); builder.setProjectionMap(map); return builder.query(mDB.getReadableDatabase(), projection, selection, selectionArgs, null, null, sortOrder); }
@Override public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) { SQLiteQueryBuilder sqlBuilder = new SQLiteQueryBuilder(); sqlBuilder.setTables(CAL_EVENTS_TABLE); if (uriMatcher.match(uri) == 1) { sqlBuilder.setProjectionMap(mMap); } else if (uriMatcher.match(uri) == 2) { sqlBuilder.setProjectionMap(mMap); sqlBuilder.appendWhere(ID + "=?"); selectionArgs = DatabaseUtils.appendSelectionArgs(selectionArgs, new String[] { uri.getLastPathSegment() }); } if (sortOrder == null || sortOrder == "") sortOrder = START_DATE + " COLLATE LOCALIZED ASC"; Cursor c = sqlBuilder.query(db, projection, selection, selectionArgs, null, null, sortOrder); c.setNotificationUri(getContext().getContentResolver(), uri); return c; }
public Cursor getWordMatches(String query, String[] columns) { String selection = KEY_WORD + " >='" + query +"'"; return query(selection, columns); } private Cursor query(String selection, String[] columns) { SQLiteQueryBuilder builder = new SQLiteQueryBuilder(); builder.setTables(FTS_VIRTUAL_TABLE); builder.setProjectionMap(mColumnMap); Cursor cursor = builder.query(mDatabaseOpenHelper.getReadableDatabase(), columns,selection,null, null, null, KEY_WORD ); if (cursor == null) { return null; } else if (!cursor.moveToFirst()) { cursor.close(); return null; } 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; }
public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) { SQLiteQueryBuilder mQueryBuilder = new SQLiteQueryBuilder(); . . . String Joins = " t1 INNER JOIN table2 t2 ON t2._id = t1._id" + " INNER JOIN table3 t3 ON t3._id = t1._id"; switch (mUriMatcher.match(uri)) { case DATA_COLLECTION_URI: mQueryBuilder.setTables(YourDataContract.TABLE1_NAME + Joins); mQueryBuilder.setProjectionMap(. . .); break; case SINGLE_DATA_URI: mQueryBuilder.setTables(YourDataContract.TABLE1_NAME + Joins); mQueryBuilder.setProjectionMap(. . .); mQueryBuilder.appendWhere(Table1._ID + "=" + uri.getPathSegments().get(1)); break; case . . . default: throw new IllegalArgumentException("Unknown URI " + uri); } . . . SQLiteDatabase db = mOpenHelper.getReadableDatabase(); Cursor c = mQueryBuilder.query(db, projection, selection, selectionArgs, groupBy, having, orderBy); return c; }
@Override public Cursor query(Uri uri, String[] projection, String selection,String[] selectionArgs, String sortOrder) { SQLiteQueryBuilder qb = new SQLiteQueryBuilder(); qb.setTables(STUDENTS_TABLE_NAME); switch (uriMatcher.match(uri)) { case STUDENTS: qb.setProjectionMap(STUDENTS_PROJECTION_MAP); break; case STUDENT_ID: qb.appendWhere( _ID + "=" + uri.getPathSegments().get(1)); Log.e("appendWhere",uri.getPathSegments().get(1).toString()); break; default: throw new IllegalArgumentException("Unknown URI " + uri); } if (sortOrder == null || sortOrder == ""){ /** * By default sort on student names */ sortOrder = NAME; } Cursor c = qb.query(db, projection, selection, selectionArgs,null, null, sortOrder); /** * register to watch a content URI for changes */ c.setNotificationUri(getContext().getContentResolver(), uri); return c; }
@Override public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) { SQLiteQueryBuilder qb = new SQLiteQueryBuilder(); qb.setTables(INSTANCES_TABLE_NAME); switch (sUriMatcher.match(uri)) { case INSTANCES: qb.setProjectionMap(sInstancesProjectionMap); break; case INSTANCE_ID: qb.setProjectionMap(sInstancesProjectionMap); qb.appendWhere(InstanceColumns._ID + "=" + uri.getPathSegments().get(1)); break; default: throw new IllegalArgumentException("Unknown URI " + uri); } // Get the database and run the query SQLiteDatabase db = getDbHelper().getReadableDatabase(); Cursor c = qb.query(db, projection, selection, selectionArgs, null, null, sortOrder); // Tell the cursor what uri to watch, so it knows when its source data changes c.setNotificationUri(getContext().getContentResolver(), uri); return c; }
@Override public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) { SQLiteQueryBuilder qb = new SQLiteQueryBuilder(); qb.setTables(FORMS_TABLE_NAME); switch (sUriMatcher.match(uri)) { case FORMS: qb.setProjectionMap(sFormsProjectionMap); break; case FORM_ID: qb.setProjectionMap(sFormsProjectionMap); qb.appendWhere(FormsColumns._ID + "=" + uri.getPathSegments().get(1)); break; default: throw new IllegalArgumentException("Unknown URI " + uri); } // Get the database and run the query SQLiteDatabase db = getDbHelper().getReadableDatabase(); Cursor c = qb.query(db, projection, selection, selectionArgs, null, null, sortOrder); // Tell the cursor what uri to watch, so it knows when its source data // changes c.setNotificationUri(getContext().getContentResolver(), uri); return c; }
/** * Query entries from the database */ @Override public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) { initialiseDatabase(); SQLiteQueryBuilder qb = new SQLiteQueryBuilder(); qb.setStrict(true); switch (sUriMatcher.match(uri)) { case ESMS_QUEUE: qb.setTables(DATABASE_TABLES[0]); qb.setProjectionMap(questionsMap); break; default: throw new IllegalArgumentException("Unknown URI " + uri); } try { Cursor c = qb.query(database, projection, selection, selectionArgs, null, null, sortOrder); c.setNotificationUri(getContext().getContentResolver(), uri); return c; } catch (IllegalStateException e) { if (Aware.DEBUG) Log.e(Aware.TAG, e.getMessage()); return null; } }
/** * Query the database */ private Cursor query(String selection, String[] selectionArgs) { SQLiteQueryBuilder qb = new SQLiteQueryBuilder(); // main INNER JOIN frequency ON (main._id=freq.pair_id) qb.setTables(MAIN_TABLE_NAME + " INNER JOIN " + FREQ_TABLE_NAME + " ON (" + MAIN_TABLE_NAME + "." + MAIN_COLUMN_ID + "=" + FREQ_TABLE_NAME + "." + FREQ_COLUMN_PAIR_ID +")"); qb.setProjectionMap(sDictProjectionMap); // Get the database and run the query SQLiteDatabase db = sOpenHelper.getReadableDatabase(); Cursor c = qb.query(db, new String[] { MAIN_COLUMN_WORD1, MAIN_COLUMN_WORD2, FREQ_COLUMN_FREQUENCY }, selection, selectionArgs, null, null, null); return c; }