如何使用LIKE%..%sql将参数放入sql查询生成器中

时间:2015-03-10 20:13:23

标签: android sql sqlite

所以我在这种形式下使用SQLiteQueryBuilder。

private static final String broadSearchSelection =
        ArticleEntry.COLUMN_TITLE + " LIKE  % ? %   OR " +
                ArticleEntry.COLUMN_SOURCE + " LIKE  % ? %  OR " +
                ArticleEntry.COLUMN_SUMMARY + " LIKE  % ? %  OR "  +
                CategoryEntry.COLUMN_DISPLAY_CATEGORY_NAME + " LIKE % ? % ";

不幸的是,它不允许我以这种形式运行程序。喜欢“%?%”,也不喜欢'%'?你可以告诉我如何编写构建器,以便重新调整我的参数吗?我用代码运行它:

 articleByCategoryQueryBuilder.query(mOpenHelper.getReadableDatabase(),
            projection,
            selection,
            selectionArgs,
            null,
            null,
            null
    );

1 个答案:

答案 0 :(得分:0)

LIKE期望一个字符串。 %必须在字符串中,但?不是文字字符,必须在外面:

COLUMN_XXX + " LIKE '%' || ? || '%' " + ...