Java 类android.database.sqlite.SQLiteQueryBuilder 实例源码

项目:NightSkyGuide    文件:ObservationDatabaseHelper.java   
public Cursor getObservations() {
    SQLiteDatabase db = getReadableDatabase();
    SQLiteQueryBuilder qb = new SQLiteQueryBuilder();

    String [] sqlSelect = {
            "_id",
            ObsTable.Cols.DsoID,
            ObsTable.Cols.ObsDate,
            ObsTable.Cols.Location,
            ObsTable.Cols.Seeing,
            ObsTable.Cols.Transparency,
            ObsTable.Cols.Telescope,
            ObsTable.Cols.Eyepiece,
            ObsTable.Cols.Power,
            ObsTable.Cols.Filter,
            ObsTable.Cols.Notes
    };

    qb.setTables(ObsTable.NAME);
    Cursor c = qb.query(db, sqlSelect, null, null, null, null, null);
    c.moveToFirst();
    return c;
}
项目:Chit-Chat    文件:BotContentProvider.java   
@Override
public Cursor query(Uri uri, String[] projection, String selection,
                    String[] selectionArgs, String sortOrder) {
    db = mBotDatabase.getReadableDatabase();
    SQLiteQueryBuilder queryBuilder = new SQLiteQueryBuilder();
    queryBuilder.setTables(BotContracts.TABLE_NAME);
    switch (sUriMatcher.match(uri)) {
        case 1:
            break;
        case 2:
            queryBuilder.appendWhere(BotContracts.COLUMN_ID + "=" + uri.getPathSegments().get(1));
            break;
        default:
            throw new IllegalArgumentException("Unknown URI " + uri);
    }
    if (sortOrder == null || sortOrder == "") {
        sortOrder = BotContracts.COLUMN_BOT_NAME;
    }
    Cursor c = queryBuilder.query(db, projection, selection, selectionArgs, null, null, sortOrder);
    c.setNotificationUri(getContext().getContentResolver(), uri);
    return c;

}
项目:GitHub    文件:SimpleEntityContentProvider.java   
@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;
}
项目:keepass2android    文件:UserBigramDictionary.java   
/**
 * 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;
}
项目:IslamicLibraryAndroid    文件:BooksInformationDbHelper.java   
/**
 * @param selection     A filter declaring which rows to return, formatted as an SQL WHERE clause (excluding the WHERE itself). Passing null will return all rows
 * @param selectionArgs You may include ?s in selection, which will be replaced by the values from selectionArgs, in order that they appear in the selection. The values will be bound as Strings.
 * @return a cursor over the result set coulms are those specified by {@link BooksInformationDbHelper#BOOK_LISTING_PROJECTION}
 */
private Cursor queryBookListing(String selection, String[] selectionArgs) {

    SQLiteDatabase db = this.getReadableDatabase();
    SQLiteQueryBuilder builder = new SQLiteQueryBuilder();
    builder.setTables(BOOKS_JOIN_AUTHORS);


    return builder.query(db,
            BOOK_LISTING_PROJECTION,
            selection,
            selectionArgs,
            null,
            null,
            null);
}
项目:buildAPKsSamples    文件:DictionaryDatabase.java   
/**
 * Performs a database query.
 * @param selection The selection clause
 * @param selectionArgs Selection arguments for "?" components in the selection
 * @param columns The columns to return
 * @return A Cursor over all rows matching the query
 */
private Cursor query(String selection, String[] selectionArgs, String[] columns) {
    /* The SQLiteBuilder provides a map for all possible columns requested to
     * actual columns in the database, creating a simple column alias mechanism
     * by which the ContentProvider does not need to know the real column names
     */
    SQLiteQueryBuilder builder = new SQLiteQueryBuilder();
    builder.setTables(FTS_VIRTUAL_TABLE);
    builder.setProjectionMap(mColumnMap);

    Cursor cursor = builder.query(mDatabaseOpenHelper.getReadableDatabase(),
            columns, selection, selectionArgs, null, null, null);

    if (cursor == null) {
        return null;
    } else if (!cursor.moveToFirst()) {
        cursor.close();
        return null;
    }
    return cursor;
}
项目:aos-MediaLib    文件:ScraperProvider.java   
private static void handleMovieFull(SQLiteQueryBuilder qb) {
    if(DBG) Log.d(TAG, "File is a movie.");

    qb.setTables(ScraperTables.MOVIE_TABLE_NAME +
            " LEFT JOIN " + ScraperTables.FILMS_MOVIE_VIEW_NAME + " ON (" +
            ScraperTables.MOVIE_TABLE_NAME + "." +
            ScraperStore.Movie.ID + " = " +
            ScraperTables.FILMS_MOVIE_VIEW_NAME + "." +
            ScraperStore.Movie.Director.MOVIE + ") " +
            "LEFT JOIN " + ScraperTables.PLAYS_MOVIE_VIEW_NAME + " ON (" +
            ScraperTables.MOVIE_TABLE_NAME + "." +
            ScraperStore.Movie.ID + " = " + 
            ScraperTables.PLAYS_MOVIE_VIEW_NAME + "." +
            ScraperStore.Movie.Actor.MOVIE + ") " +
            "LEFT JOIN " + ScraperTables.PRODUCES_MOVIE_VIEW_NAME + " ON (" +
            ScraperTables.MOVIE_TABLE_NAME + "." +
            ScraperStore.Movie.ID + " = " + 
            ScraperTables.PRODUCES_MOVIE_VIEW_NAME + "." +
            ScraperStore.Movie.Studio.MOVIE + ") " +
            "LEFT JOIN " + ScraperTables.BELONGS_MOVIE_VIEW_NAME + " ON (" +
            ScraperTables.MOVIE_TABLE_NAME + "." +
            ScraperStore.Movie.ID + " = " + 
            ScraperTables.BELONGS_MOVIE_VIEW_NAME + "." +
            ScraperStore.Movie.Genre.MOVIE + ")");
}
项目:aos-MediaLib    文件:ScraperProvider.java   
private static void handleShowFull(SQLiteQueryBuilder qb) {
    if(DBG) Log.d(TAG, "File is a TV show.");

    qb.setTables(ScraperTables.SHOW_TABLE_NAME + " LEFT JOIN " +
            ScraperTables.FILMS_SHOW_VIEW_NAME + " ON (" +
            ScraperTables.SHOW_TABLE_NAME + "." +
            ScraperStore.Show.ID + " = " +
            ScraperTables.FILMS_SHOW_VIEW_NAME + "." +
            ScraperStore.Show.Director.SHOW + ") " +
            "LEFT JOIN " + ScraperTables.PLAYS_SHOW_VIEW_NAME + " ON (" +
            ScraperTables.SHOW_TABLE_NAME + "." +
            ScraperStore.Show.ID + " = " + 
            ScraperTables.PLAYS_SHOW_VIEW_NAME + "." +
            ScraperStore.Show.Actor.SHOW + ") " +
            "LEFT JOIN " + ScraperTables.PRODUCES_SHOW_VIEW_NAME + " ON (" +
            ScraperTables.SHOW_TABLE_NAME + "." +
            ScraperStore.Show.ID + " = " + 
            ScraperTables.PRODUCES_SHOW_VIEW_NAME + "." +
            ScraperStore.Show.Studio.SHOW + ") " +
            "LEFT JOIN " + ScraperTables.BELONGS_SHOW_VIEW_NAME + " ON (" +
            ScraperTables.SHOW_TABLE_NAME + "." +
            ScraperStore.Show.ID + " = " + 
            ScraperTables.BELONGS_SHOW_VIEW_NAME + "." +
            ScraperStore.Show.Genre.SHOW + ")");
}
项目:KeePass2Android    文件:UserBigramDictionary.java   
/**
 * 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;
}
项目:Privy    文件:PrivyProvider.java   
@Nullable
@Override
public Cursor query(Uri uri, String[] projection, String selection,
                    String[] selectionArgs, String sortOrder) {
    SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
    qb.setTables(TABLE_NAME);
    qb.setProjectionMap(values);

    switch (uriMatcher.match(uri)) {
        case API:
            break;
        case API_GET:
            qb.appendWhere(id + "=" + uri.getLastPathSegment());
            break;
        default:
            throw new IllegalArgumentException("Unknown URI : " + uri);
    }
    if (sortOrder == null || sortOrder.equals("")) {
        sortOrder = name;
    }

    Cursor c = qb.query(db, projection, selection, selectionArgs, null,
            null, sortOrder);
    c.setNotificationUri(getContext().getContentResolver(), uri);
    return c;
}
项目:QuoteLock    文件:AutoContentProvider.java   
@Override
public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) {
    int matchCode = mUriMatcher.match(uri);
    if (matchCode < 0) {
        throw new IllegalArgumentException("Invalid query URI: " + uri);
    }
    SQLiteQueryBuilder queryBuilder = new SQLiteQueryBuilder();
    if (isItemUri(matchCode)) {
        queryBuilder.appendWhere(BaseColumns._ID + "=" + uri.getLastPathSegment());
    }
    queryBuilder.setTables(getTableName(matchCode));
    SQLiteDatabase db = getDatabase(false);
    Cursor cursor = queryBuilder.query(db, projection, selection, selectionArgs, null, null, sortOrder);
    cursor.setNotificationUri(getContext().getContentResolver(), uri);
    return cursor;
}
项目:nuclei-android    文件:ContentProviderBase.java   
protected Cursor query(Uri uri, String tableName, String[] columns, String selection, String[] selectionArgs, String sortOrder) {
    String orderBy = sortOrder;
    if (TextUtils.isEmpty(sortOrder))
        orderBy = "_id asc";
    SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
    qb.setTables(tableName);
    mDb = mDbHelper.getWritableDatabase();
    return qb.query(mDb,
            columns,
            selection,
            selectionArgs,
            null,
            null,
            orderBy
    );
}
项目:nuclei-android    文件:ContentProviderBase.java   
protected Cursor queryById(Uri uri, String tableName, String[] columns, String selection, String[] selectionArgs, String sortOrder) {
    SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
    qb.setTables(tableName);
    StringBuilder w = new StringBuilder();
    w.append("_id = ");
    w.append(uri.getLastPathSegment());
    if (selection != null) {
        w.append(" AND (");
        w.append(selection);
        w.append(")");
    }
    mDb = mDbHelper.getWritableDatabase();
    return qb.query(mDb,
            columns,
            w.toString(),
            selectionArgs,
            null,
            null,
            sortOrder
    );
}
项目:WindowsNoteMaster    文件:DatabaseManager.java   
@Override
public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs,
                    String sortOrder) {

    int key = uriMatcher.match(uri);
    String table = "";

    switch (key) {
        case M_NOTE://0
            table = tblNote.TBL_NAME;
            break;
        default:
            break;
    }

    SQLiteDatabase sqlDB = mDbHelper.getWritableDatabase();
    SQLiteQueryBuilder sqlBuilder = new SQLiteQueryBuilder();
    sqlBuilder.setTables(table);
    sqlBuilder.setDistinct(true);
    Cursor c = sqlBuilder.query(sqlDB, projection, selection, selectionArgs, null, null,
            sortOrder);
    c.setNotificationUri(getContext().getContentResolver(), uri);
    return c;
}
项目:protrip    文件:PlacesProvider.java   
@Override
public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) {
    SQLiteQueryBuilder queryBuilder = new SQLiteQueryBuilder();
    queryBuilder.setTables(sqLiteOpenHelper.TABLE_NAME);
    switch (uriMatcher.match(uri)){
        case PLACES_ID:
            queryBuilder.setProjectionMap(PlaceMap);
            break;
        default:
            throw new IllegalArgumentException("Unknown URI " + uri);
    }
    if (sortOrder == null || sortOrder == ""){
        sortOrder = sqLiteOpenHelper.ID;
    }

    Cursor cursor = queryBuilder.query(database, projection, selection,
            selectionArgs, null, null, sortOrder);
    cursor.setNotificationUri(getContext().getContentResolver(), uri);
    return cursor;
}
项目:Demo_Public    文件:SettingsProvider.java   
@Nullable
@Override
public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) {
    SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
    qb.setTables(Settings.TABLE_NAME);

    switch (sUriMatcher.match(uri)){
        case SETTINGS:
            qb.setProjectionMap(sProjectionMap);
            break;
        case SETTINGS_ID:
            qb.setProjectionMap(sProjectionMap);
            qb.appendWhere(
                    Settings._ID +"="+uri.getPathSegments().get(1)
            );
            break;
        default:
            throw new IllegalArgumentException("Unknown uri: "+uri);
    }

    SQLiteDatabase db = mOPenHelper.getReadableDatabase();
    Cursor c = qb.query(db,projection,selection,selectionArgs,null,null,sortOrder);
    c.setNotificationUri(getContext().getContentResolver(),uri);
    return c;
}
项目:xowa_android    文件:SQLiteContentProvider.java   
@Override
public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) {
    SQLiteQueryBuilder queryBuilder = new SQLiteQueryBuilder();
    queryBuilder.setTables(getTableName());

    int uriType = uriMatcher.match(uri);

    SQLiteDatabase db = getDbOpenHelper().getReadableDatabase();
    Cursor cursor;

    switch (uriType) {
        case MATCH_ALL:
            cursor = queryBuilder.query(db, projection, selection, selectionArgs, null, null, sortOrder);
            break;
        default:
            throw new IllegalArgumentException("Uri " + uri + " does not match any matcher!");
    }

    cursor.setNotificationUri(getContext().getContentResolver(), uri);

    return cursor;
}
项目:forsuredbandroid    文件:FSDefaultProvider.java   
private Cursor performJoinQuery(@NonNull Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) {
    QueryCorrector qc = new UriQueryCorrector(uri, selection, selectionArgs);
    SQLiteQueryBuilder builder = new SQLiteQueryBuilder();
    builder.setTables(UriJoinTranslator.joinStringFrom(uri));
    boolean isDistinct = Boolean.parseBoolean(uri.getQueryParameter("DISTINCT"));
    builder.setDistinct(isDistinct);
    final String limit = qc.getLimit() > 0 ? String.valueOf(qc.getLimit()) : null;
    return builder.query(FSDBHelper.inst().getReadableDatabase(),
            projection,
            qc.getSelection(true),
            qc.getSelectionArgs(),
            null,
            null,
            sortOrder,
            limit);
}
项目:LibreTasks    文件:RegisteredActionParameterDbAdapter.java   
/**
 * Return a Cursor contains all RegisteredActionParameter records which matches the parameters.
 * 
 * @param parameterName
 *          is the parameter name, or null to fetch any parameterName.
 * @param actionID
 *          is the action id, or null to fetch any actionID.
 * @param dataTypeID
 *          is the dataType id, or null to fetch any dataTypeID.
 * @return a Cursor contains all RegisteredActionParameter records which matches the parameters.
 */
public Cursor fetchAll(String parameterName, Long actionID, Long dataTypeID) {
  SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
  qb.setTables(DATABASE_TABLE);
  qb.appendWhere("1=1");
  if (parameterName != null) {
    qb.appendWhere(" AND " + KEY_ACTIONPARAMETERNAME + " = ");
    qb.appendWhereEscapeString(parameterName);
  }
  if (actionID != null) {
    qb.appendWhere(" AND " + KEY_ACTIONID + " = " + actionID);
  }
  if (dataTypeID != null) {
    qb.appendWhere(" AND " + KEY_DATATYPEID + " = " + dataTypeID);
  }
  // Not using additional selections, selectionArgs, groupBy, having, orderBy, set them to null.
  return qb.query(database, KEYS, null, null, null, null, null);
}
项目:LibreTasks    文件:DataFilterDbAdapter.java   
/**
 * Return a Cursor that contains all DataFilter records which matches the parameters.
 * 
 * @param dataFilterName
 *          is the filter name or null to fetch any filter name.
 *          
 * @param dataFilterDisplayName
 *          is the filter display name or null to fetch any filter name.
 *          
 * @param filterOnDataTypeID
 *          is the id of data type it filters on, or null to fetch any.
 *          
 * @param compareWithDataTypeID
 *          is the id of data type it compares to, or null to fetch any.      
 *          
 * @return a Cursor that contains all DataFilter records which matches the parameters.
 */
public Cursor fetchAll(String dataFilterName, String dataFilterDisplayName, 
    Long filterOnDataTypeID, Long compareWithDataTypeID) {
  SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
  qb.setTables(DATABASE_TABLE);
  qb.appendWhere("1=1");
  if (dataFilterName != null) {
    qb.appendWhere(" AND " + KEY_DATAFILTERNAME + " = ");
    qb.appendWhereEscapeString(dataFilterName);
  }
  if (dataFilterDisplayName != null) {
    qb.appendWhere(" AND " + KEY_DATAFILTERDISPLAYNAME + " = ");
    qb.appendWhereEscapeString(dataFilterDisplayName);
  }
  if (filterOnDataTypeID != null) {
    qb.appendWhere(" AND " + KEY_FILTERONDATATYPEID + " = " + filterOnDataTypeID);
  }
  if (compareWithDataTypeID != null) {
    qb.appendWhere(" AND " + KEY_COMPAREWITHDATATYPEID + " = " + compareWithDataTypeID);
  }
  // Not using additional selections, selectionArgs, groupBy, having, orderBy, set them to null.
  return qb.query(database, KEYS, null, null, null, null, null);
}
项目:LibreTasks    文件:RegisteredAppDbAdapter.java   
/**
 * Return a Cursor that contains all RegisteredApp records which matches the parameters.
 * 
 * @param appName
 *          is the application name or null to fetch any appName.
 * @param pkgName
 *          is the package name or null to fetch any pkgName.
 * @param enabled
 *          is whether the application is activated or null to fetch any enabled status.
 * @return a Cursor that contains all RegisteredApp records which matches the parameters.
 */
public Cursor fetchAll(String appName, String pkgName, Boolean enabled) {
  SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
  qb.setTables(DATABASE_TABLE);
  qb.appendWhere("1=1");
  if (appName != null) {
    qb.appendWhere(" AND " + KEY_APPNAME + " = ");
    qb.appendWhereEscapeString(appName);
  }
  if (pkgName != null) {
    qb.appendWhere(" AND " + KEY_PKGNAME + " = ");
    qb.appendWhereEscapeString(pkgName);
  }
  if (enabled != null) {
    qb.appendWhere(" AND " + KEY_ENABLED + " = " + (enabled ? 1 : 0));
  }
  // Not using additional selections, selectionArgs, groupBy, having, orderBy, set them to null.
  return qb.query(database, KEYS, null, null, null, null, null);
}
项目:LibreTasks    文件:RegisteredEventAttributeDbAdapter.java   
/**
 * Return a Cursor contains all RegisteredEventAttribute records which matches the parameters.
 * 
 * @param attributeName
 *          is the attribute name, or null to fetch any attributeName
 * @param eventID
 *          is the event id, or null to fetch any eventID
 * @param dataTypeID
 *          is the dataType id, or null to fetch any dataTypeID
 * @return a Cursor contains all RegisteredEventAttribute records which matches the parameters.
 */
public Cursor fetchAll(String attributeName, Long eventID, Long dataTypeID) {
  SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
  qb.setTables(DATABASE_TABLE);
  qb.appendWhere("1=1");
  if (attributeName != null) {
    qb.appendWhere(" AND " + KEY_EVENTATTRIBUTENAME + " = ");
    qb.appendWhereEscapeString(attributeName);
  }
  if (eventID != null) {
    qb.appendWhere(" AND " + KEY_EVENTID + " = " + eventID);
  }
  if (dataTypeID != null) {
    qb.appendWhere(" AND " + KEY_DATATYPEID + " = " + dataTypeID);
  }
  // Not using additional selections, selectionArgs, groupBy, having, orderBy, set them to null.
  return qb.query(database, KEYS, null, null, null, null, null);
}
项目:LibreTasks    文件:DataTypeDbAdapter.java   
/**
 * Return a Cursor that contains all DataType records which matches the parameters.
 * 
 * @param dataTypeName
 *          is the data type name or null to fetch any dataTypeName.
 * @param dataTypeClassName
 *          is the name of the data type class.
 * @return a Cursor that contains all DataType records which matches the parameters.
 */
public Cursor fetchAll(String dataTypeName, String dataTypeClassName) {
  SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
  qb.setTables(DATABASE_TABLE);
  qb.appendWhere("1=1");
  if (dataTypeName != null) {
    qb.appendWhere(" AND " + KEY_DATATYPENAME + " = ");
    qb.appendWhereEscapeString(dataTypeName);
  }
  if (dataTypeClassName != null) {
    qb.appendWhere(" AND " + KEY_DATATYPECLASSNAME + " = ");
    qb.appendWhereEscapeString(dataTypeClassName);
  }
  // Not using additional selections, selectionArgs, groupBy, having, orderBy, set them to null.
  return qb.query(database, KEYS, null, null, null, null, null);
}
项目:LibreTasks    文件:RuleActionParameterDbAdapter.java   
/**
 * Return a Cursor that contains all RuleActionParameter records which matches the parameters.
 * 
 * @param ruleActionID
 *          is id of rule action it belongs to, or null to fetch any
 * @param actionParameterID
 *          is id of its action parameter type, or null to fetch any
 * @param ruleActionParameterData
 *          is the data associated with this parameter, or null to fetch any
 * @return a Cursor that contains all RuleActionParameter records which matches the parameters.
 */
public Cursor fetchAll(Long ruleActionID, Long actionParameterID, String ruleActionParameterData) {

  SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
  qb.setTables(DATABASE_TABLE);
  qb.appendWhere("1=1");
  if (ruleActionID != null) {
    qb.appendWhere(" AND " + KEY_RULEACTIONID + " = " + ruleActionID);
  }
  if (actionParameterID != null) {
    qb.appendWhere(" AND " + KEY_ACTIONPARAMETERID + " = " + actionParameterID);
  }
  if (ruleActionParameterData != null) {
    qb.appendWhere(" AND " + KEY_RULEACTIONPARAMETERDATA + " = ");
    qb.appendWhereEscapeString(ruleActionParameterData);
  }
  // Not using additional selections, selectionArgs, groupBy, having, orderBy, set them to null.
  return qb.query(database, KEYS, null, null, null, null, null);
}
项目:LibreTasks    文件:RuleDbAdapter.java   
/**
 * Return a Cursor that contains all Rule records which matches the parameters.
 * 
 * @param eventID
 *          is the event id, or null to fetch any eventID
 * @param ruleName
 *          is name of rule, or null to fetch any ruleName
 * @param ruleDesc
 *          is description of rule, or null to fetch any description
 * @param enabled
 *          is whether the rule is activated or null to fetch any enabled status
 * @param orderBy
 *          is the ',' delimited order by columns, or null if no specific order
 * @return a Cursor that contains all Rule records which matches the parameters.
 * @throws SQLiteException
 *           if orderBy is not compiled correctly
 */
public Cursor fetchAll(Long eventID, String ruleName, String ruleDesc, Boolean enabled,
    String orderBy) {

  SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
  qb.setTables(DATABASE_TABLE);
  qb.appendWhere("1=1");
  if (eventID != null) {
    qb.appendWhere(" AND " + KEY_EVENTID + " = " + eventID);
  }
  if (ruleName != null) {
    qb.appendWhere(" AND " + KEY_RULENAME + " = ");
    qb.appendWhereEscapeString(ruleName);
  }
  if (ruleDesc != null) {
    qb.appendWhere(" AND " + KEY_RULEDESC + " = ");
    qb.appendWhereEscapeString(ruleDesc);
  }
  if (enabled != null) {
    qb.appendWhere(" AND " + KEY_ENABLED + " = " + (enabled ? 1 : 0));
  }

  // Not using additional selections, selectionArgs, groupBy, having, orderBy, set them to null.
  return qb.query(database, KEYS, null, null, null, null, orderBy);
}
项目:LibreTasks    文件:ExternalAttributeDbAdapter.java   
/**
 * Return a Cursor that contains all ExternalAttribute records which matches the parameters
 * 
 * @param attributeName
 *          is the attribute name, or null to fetch any actionName
 * @param appID
 *          is the application id, or null to fetch any appID
 * @param dataTypeID
 *          is the dataType id, or null to fetch any dataTypeID
 * @return a Cursor that contains all RegisteredAction records which matches the parameters.
 */
public Cursor fetchAll(String attributeName, Long appID, Long dataTypeID) {
  SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
  qb.setTables(DATABASE_TABLE);
  qb.appendWhere("1=1");
  if (attributeName != null) {
    qb.appendWhere(" AND " + KEY_EXTERNALATTRIBUTENAME + " = ");
    qb.appendWhereEscapeString(attributeName);
  }
  if (appID != null) {
    qb.appendWhere(" AND " + KEY_APPID + " = " + appID);
  }
  if (dataTypeID != null) {
    qb.appendWhere(" AND " + KEY_DATATYPEID + " = " + dataTypeID);
  }
  // Not using additional selections, selectionArgs, groupBy, having, orderBy, set them to null.
  return qb.query(database, KEYS, null, null, null, null, null);
}
项目:LibreTasks    文件:FailedActionsDbAdapter.java   
/**
 * Return a Cursor that contains all FailedAction records which matches the parameters.
 * 
 * @param ruleID
 *          is id of the rule it belongs to, or null to fetch any.
 * @param actionID
 *          is id of its action type, or null to fetch any.
 * @param failureType TYPE + " integer not null, "
    + KEY_COUNT + 
 *          is type of failure or null to fetch any.
 * @return a Cursor that contains all RuleAction records which matches the parameters.
 */
public Cursor fetchAll(Long ruleID, Long actionID, Integer failureType) {
  SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
  qb.setTables(DATABASE_TABLE);
  qb.appendWhere("1=1");
  if (ruleID != null) {
    qb.appendWhere(" AND " + KEY_RULEID + "=" + ruleID);
  }
  if (actionID != null) {
    qb.appendWhere(" AND " + KEY_ACTIONID + "=" + actionID);
  }
  if (failureType != null) {
    qb.appendWhere(" AND " + KEY_FAILURE_TYPE + "=" + failureType);
  }
  // Not using additional selections, selectionArgs, groupBy, having, orderBy, set them to null.
  return qb.query(database, KEYS, null, null, null, null, null);
}
项目:LibreTasks    文件:FailedActionParameterDbAdapter.java   
/**
 * Return a Cursor that contains all FailedActionParameter records which matches the parameters.
 * 
 * @param failedActionID
 *          is id of failed action it belongs to, or null to fetch any
 * @param actionParameterName
 *          name of action parameter, or null to fetch any
 * @param failedActionParameterData
 *          is the data associated with this parameter, or null to fetch any
 * @return a Cursor that contains all FailedActionParameter records which matches the parameters.
 */
public Cursor fetchAll(Long failedActionID, String actionParameterName, 
    String failedActionParameterData) {

  SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
  qb.setTables(DATABASE_TABLE);
  qb.appendWhere("1=1");
  if (failedActionID != null) {
    qb.appendWhere(" AND " + KEY_FAILEDACTIONID + " = " + failedActionID);
  }
  if (actionParameterName != null) {
    qb.appendWhere(" AND " + KEY_ACTIONPARAMETERNAME + " = " + actionParameterName);
  }
  if (failedActionParameterData != null) {
    qb.appendWhere(" AND " + KEY_FAILEDACTIONPARAMETERDATA + " = ");
    qb.appendWhereEscapeString(failedActionParameterData);
  }
  // Not using additional selections, selectionArgs, groupBy, having, orderBy, set them to null.
  return qb.query(database, KEYS, null, null, null, null, null);
}
项目:Capstone-Project    文件:BacklogProvider.java   
private Cursor findIssuesStatsByProjectId(Uri uri) {
    final String projectId = uri.getQueryParameter(IssuePreviewEntry.QUERY_PARAMETER_PROJECT_ID);

    if (projectId == null) {
        throw new IllegalArgumentException("ProjectId should not be null");
    }

    final String subQueryOpenIssues = createIssueSubQueryWithStatus(projectId, "Open");

    final String subQueryInProgressIssues = createIssueSubQueryWithStatus(projectId, "In Progress");

    final String subQueryResolved = createIssueSubQueryWithStatus(projectId, "Resolved");

    final SQLiteQueryBuilder unionQueryBuilder = new SQLiteQueryBuilder();
    final String sql = unionQueryBuilder.buildUnionQuery(new String[]{
                    subQueryOpenIssues, subQueryInProgressIssues, subQueryResolved},
            null, null);

    return mOpenHelper.getReadableDatabase().rawQuery(sql, null);
}
项目:Capstone-Project    文件:BacklogProvider.java   
private Cursor findIssuesByStatusAndCreated(String[] projections, String status, String created) {
    final SQLiteQueryBuilder queryBuilder = new SQLiteQueryBuilder();
    queryBuilder.setTables(IssueEntry.TABLE_NAME
            + " INNER JOIN " + ProjectEntry.TABLE_NAME
            + " ON " + IssueEntry.TABLE_NAME + "." + IssueEntry.PROJECT_ID
            + "=" + ProjectEntry.TABLE_NAME + "." + ProjectEntry._ID);
    queryBuilder.appendWhere(IssueEntry.STATUS + " = ? ");
    queryBuilder.appendWhere("AND strftime('%s',"
            + IssueEntry.CREATED_DATE + ") - strftime('%s', ? ) > 0");

    final SQLiteDatabase db = mOpenHelper.getReadableDatabase();

    return queryBuilder.query(
            db,
            projections,
            null,
            new String[]{status, created},
            null,
            null,
            IssueEntry.DEFAULT_SORT,
            null,
            null);
}
项目:Capstone-Project    文件:BacklogProvider.java   
public Cursor findCommentsByIssueId(Uri uri, String[] projections, String sortOrder) {
    final String issueId = uri.getPathSegments().get(uri.getPathSegments().size() - 2);

    final SQLiteQueryBuilder queryBuilder = new SQLiteQueryBuilder();
    queryBuilder.setTables(CommentEntry.TABLE_NAME
            + " INNER JOIN " + UserEntry.TABLE_NAME
            + " ON " + CommentEntry.TABLE_NAME + ".CREATED_USER_ID = " + UserEntry.TABLE_NAME + "._ID "
    );

    final SQLiteDatabase db = mOpenHelper.getReadableDatabase();

    final String selection = CommentEntry.ISSUE_ID + " = ?";

    return queryBuilder.query(
            db,
            projections,
            selection,
            new String[]{issueId},
            null,
            null,
            sortOrder);
}
项目:Capstone-Project    文件:BacklogProvider.java   
public Cursor findLastTenOpenedIssues(String[] projections) {

        final SQLiteQueryBuilder queryBuilder = new SQLiteQueryBuilder();
        queryBuilder.setTables(IssueEntry.TABLE_NAME);
        queryBuilder.appendWhere(IssueEntry.STATUS + " = ? ");

        final SQLiteDatabase db = mOpenHelper.getReadableDatabase();

        return queryBuilder.query(
                db,
                projections,
                null,
                new String[]{STATUS_ISSUE_OPEN},
                null,
                null,
                IssueEntry.DEFAULT_SORT,
                "10",
                null);
    }
项目:Popular-Movies-App    文件:MoviesProvider.java   
private Cursor getMoviesFromReferenceTable(String tableName, String[] projection, String selection,
                                           String[] selectionArgs, String sortOrder) {

    SQLiteQueryBuilder sqLiteQueryBuilder = new SQLiteQueryBuilder();

    // tableName INNER JOIN movies ON tableName.movie_id = movies._id
    sqLiteQueryBuilder.setTables(
            tableName + " INNER JOIN " + MoviesContract.MovieEntry.TABLE_NAME +
                    " ON " + tableName + "." + MoviesContract.COLUMN_MOVIE_ID_KEY +
                    " = " + MoviesContract.MovieEntry.TABLE_NAME + "." + MoviesContract.MovieEntry._ID
    );

    return sqLiteQueryBuilder.query(dbHelper.getReadableDatabase(),
            projection,
            selection,
            selectionArgs,
            null,
            null,
            sortOrder
    );
}
项目:lbry-android    文件:ExchangeHistoryProvider.java   
@Override
public Cursor query(final Uri uri, final String[] projection, final String selection,
                    final String[] selectionArgs, final String sortOrder) {
    final SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
    qb.setTables(DATABASE_TABLE);

    final List<String> pathSegments = uri.getPathSegments();
    if (pathSegments.size() > 2)
        throw new IllegalArgumentException(uri.toString());

    if (pathSegments.size() == 2) {
        final AbstractAddress address = getDepositAddress(uri);
        qb.appendWhere(KEY_DEPOSIT_COIN_ID + "=");
        qb.appendWhereEscapeString(address.getType().getId());
        qb.appendWhere(" AND " + KEY_DEPOSIT_ADDRESS + "=");
        qb.appendWhereEscapeString(address.toString());
    }

    final Cursor cursor = qb.query(helper.getReadableDatabase(), projection,
            selection, selectionArgs, null, null, sortOrder);

    cursor.setNotificationUri(getContext().getContentResolver(), uri);

    return cursor;
}
项目:Practice    文件:WifiDirectContentProvider.java   
@Override
public Cursor query(Uri uri, String[] strings, String s, String[] strings1, String s1) {
    SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
    switch (sURLMatcher.match(uri)) {
        case TRANSFER_INSTANCE:
            qb.setTables(Constants.TABLE_NAME);
            break;
        case TRANSFER_INSTANCE_ID:
            qb.setTables(Constants.TABLE_NAME);
            qb.appendWhere(Constants.InstanceColumns.ID + "=");
            qb.appendWhere(uri.getLastPathSegment());
            break;
        default:
            throw new IllegalArgumentException("Unknown URL " + uri);
    }
    SQLiteDatabase database = mDbHelper.getReadableDatabase();
    Cursor ret = qb.query(database, strings, s, strings1, null, null, s1);
    if (ret == null) {
        LogUtils.e(TAG, "query error, uri: " + uri);
    } else {
        ret.setNotificationUri(getContext().getContentResolver(), uri);
    }
    return ret;
}
项目:Practice    文件:WifiDirectContentProvider.java   
@Override
public Cursor query(Uri uri, String[] strings, String s, String[] strings1, String s1) {
    SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
    switch (sURLMatcher.match(uri)) {
        case TRANSFER_INSTANCE:
            qb.setTables(Constants.TABLE_NAME);
            break;
        case TRANSFER_INSTANCE_ID:
            qb.setTables(Constants.TABLE_NAME);
            qb.appendWhere(Constants.InstanceColumns.ID + "=");
            qb.appendWhere(uri.getLastPathSegment());
            break;
        default:
            throw new IllegalArgumentException("Unknown URL " + uri);
    }
    SQLiteDatabase database = mDbHelper.getReadableDatabase();
    Cursor ret = qb.query(database, strings, s, strings1, null, null, s1);
    if (ret == null) {
        LogUtils.e(TAG, "query error, uri: " + uri);
    } else {
        ret.setNotificationUri(getContext().getContentResolver(), uri);
    }
    return ret;
}
项目:Practice    文件:WifiDirectContentProvider.java   
@Override
public Cursor query(Uri uri, String[] strings, String s, String[] strings1, String s1) {
    SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
    switch (sURLMatcher.match(uri)) {
        case TRANSFER_INSTANCE:
            qb.setTables(Constants.TABLE_NAME);
            break;
        case TRANSFER_INSTANCE_ID:
            qb.setTables(Constants.TABLE_NAME);
            qb.appendWhere(Constants.InstanceColumns.ID + "=");
            qb.appendWhere(uri.getLastPathSegment());
            break;
        default:
            throw new IllegalArgumentException("Unknown URL " + uri);
    }
    SQLiteDatabase database = mDbHelper.getReadableDatabase();
    Cursor ret = qb.query(database, strings, s, strings1, null, null, s1);
    if (ret == null) {
        LogUtils.e(TAG, "query error, uri: " + uri);
    } else {
        ret.setNotificationUri(getContext().getContentResolver(), uri);
    }
    return ret;
}
项目:android_database    文件:JoinEntity.java   
/**
 * Prepares a new instance of SQLiteQueryBuilder for purpose of {@link #onQuery(SQLiteDatabase, String[], String, String[], String)}
 * method with the <b>JOIN statement</b> created via {@link #onCreateJoinStatement()}.
 *
 * @return SQLiteQueryBuilder builder with this entity's join statement set as {@link SQLiteQueryBuilder#setTables(String)}.
 */
@NonNull
@Override
protected SQLiteQueryBuilder prepareQueryBuilder() {
    final SQLiteQueryBuilder builder = super.prepareQueryBuilder();
    final String joinStatement = onCreateJoinStatement();
    final JoinMatcher matcher = JoinMatcher.obtain();
    final boolean joinStatementValid = matcher.validateStatement(joinStatement);
    matcher.recycle();
    if (joinStatementValid) {
        builder.setTables(joinStatement);
        return builder;
    }
    final String entityName = getClass().getSimpleName();
    throw new IllegalArgumentException("Join statement(" + joinStatement + ") for the entity(" + entityName + ") is not valid.");
}
项目:android_database    文件:JoinModelEntity.java   
/**
 * Prepares a new instance of SQLiteQueryBuilder for purpose of {@link #onQuery(SQLiteDatabase, String[], String, String[], String)}
 * method with the <b>JOIN statement</b> created via {@link #onCreateJoinStatement()}.
 *
 * @return SQLiteQueryBuilder builder with this entity's join statement set as {@link SQLiteQueryBuilder#setTables(String)}.
 */
@NonNull
@Override
protected SQLiteQueryBuilder prepareQueryBuilder() {
    final SQLiteQueryBuilder builder = super.prepareQueryBuilder();
    final String joinStatement = onCreateJoinStatement();
    final JoinMatcher matcher = JoinMatcher.obtain();
    final boolean joinStatementValid = matcher.validateStatement(joinStatement);
    matcher.recycle();
    if (joinStatementValid) {
        builder.setTables(joinStatement);
        return builder;
    }
    final String entityName = getClass().getSimpleName();
    throw new IllegalArgumentException("Join statement(" + joinStatement + ") for the entity(" + entityName + ") is not valid.");
}
项目:android_device_MTS_x2605    文件:FmRadioContentProvider.java   
/**
 * Query the database with current settings and add information
 *
 * @param uri The database uri
 * @param projection The columns need to query
 * @param selection The where clause
 * @param selectionArgs The where value
 * @param sortOrder The column to sort
 *
 * @return The query result cursor
 */
@Override
public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs,
        String sortOrder) {
    SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
    SQLiteDatabase db = mDbHelper.getReadableDatabase();
    qb.setTables(TABLE_NAME);

    int match = URI_MATCHER.match(uri);

    if (STATION_FREQ_ID == match) {
        qb.appendWhere("_id = " + uri.getPathSegments().get(1));
    }

    Cursor c = qb.query(db, projection, selection, selectionArgs, null, null, sortOrder);
    if (null != c) {
        c.setNotificationUri(getContext().getContentResolver(), uri);
    }
    return c;
}