Android contentResolver 进行query 条件为where in时出错
2016-03-07 23:44
639 查看
项目中需要使用contentResolver通过in操作符对一定范围内的数据进行查询。
使用普通的方案,即直接使用一个“?”构造一个普通的SQL,
如
会报语法错误。
解决方案大致如下,自己修改即可,经过验证可用。
PS:使用db进行query的时候,如果有where in条件,使用rawquery即可。
使用普通的方案,即直接使用一个“?”构造一个普通的SQL,
如
String selection = "item_name in ?"; String[] selectionArgs = new String[]{"('value1','value2,'value3')"} ;
会报语法错误。
解决方案大致如下,自己修改即可,经过验证可用。
代码块
Set<Integer> positionsSet = membersListCursorAdapter.getCurrentCheckedPosition(); List<String> ids = new ArrayList<>(); List<String> parameters = new ArrayList<>(); for (Integer position : positionsSet) { ids.add(String.valueOf(membersListCursorAdapter.getItemId(position))); parameters.add("?"); } getActivity().getContentResolver().delete( SharedUserTable.CONTENT_URI, SharedUserTable._ID + " in (" + TextUtils.join(",", parameters) + ")", ids.toArray(new String[ids.size()]) );
PS:使用db进行query的时候,如果有where in条件,使用rawquery即可。
相关文章推荐
- [leetcode 96]Unique Binary Search Trees--二叉搜索树的个数问题。
- Elasticsearch DSL中Query与Filter的区别
- Android UI 模板
- java中StringBuilder、StringBuffer、String类之间的关系 - 音
- iOS绘图-UIBezierPath的使用
- 将一个字典内的内value转换为集合:返回一个数组,此数组中包含输入字典的键值对中的数组的所有元素(为NSArray添加category)
- iOS深入学习(UITableView系列4:使用xib自定义cell)
- 95. Unique Binary Search Trees II LeetCode
- UI笔记
- 4. PathVariable、RequestParam、 CookieValue、SessionAttributes、ResponseBody、RequestHeader注解类
- NGUI图文混排
- 1007. Maximum Subsequence Sum (25)
- UIScrollView常见属性
- UI基本视图控制
- 用UI简单的控件搭载一个简单的登录页面
- UIView 的基本方法
- java中Integer.parseInt(String)与Integer.valueOf(String)区别
- Ui——创建视图的方法及过程
- iOS 基于MVC设计模式练习UITableView使用 —— 4000 HERO博客
- hdu4027Can you answer these queries?【线段树区间更新区间求和】