Android 数据库批量查询数据的操作
2017-07-05 19:32
253 查看
Android数据库,批量插入、更新、删除都比较简单,开启事务就可以了,今天遇到需要批量查询,看了api也
没发现相关的方法,网上提供大部分指向 IN 关键字,操作语句:select * from table where id in (1,2,3),这个是
没问题的,但要在Android里面使用的话,如果直接调用 db.execSQL(),没有返回结果,网上也没找到Android 相关
的实际事例,后来找发现 db.rawQuery()方法能返回cursor,然后就试了下
Cursor cursor = db.rawQuery("select * from table where id in (1,2,3) " , null);
能批量查询
如果不想拼接值的话,就用占位符吧:
Cursor cursor = db.rawQuery("SELECT * from table WHERE id IN (?,?,?)" ,new String[]{"1","2","3"});
占位符还是要自己拼接的,有多少数据就有多少个占位符, 另一个更好的操作方式
Cursor cursor = db.rawQuery("SELECT * from
table WHERE id IN (?,?,?)" ,pgList.toArray(new String[]{}));
内容虽没什么技术含量,但毕竟是自己努力解决的,必须要记录下!!!哈哈,大牛手下留情!!
没发现相关的方法,网上提供大部分指向 IN 关键字,操作语句:select * from table where id in (1,2,3),这个是
没问题的,但要在Android里面使用的话,如果直接调用 db.execSQL(),没有返回结果,网上也没找到Android 相关
的实际事例,后来找发现 db.rawQuery()方法能返回cursor,然后就试了下
Cursor cursor = db.rawQuery("select * from table where id in (1,2,3) " , null);
能批量查询
如果不想拼接值的话,就用占位符吧:
Cursor cursor = db.rawQuery("SELECT * from table WHERE id IN (?,?,?)" ,new String[]{"1","2","3"});
占位符还是要自己拼接的,有多少数据就有多少个占位符, 另一个更好的操作方式
Cursor cursor = db.rawQuery("SELECT * from
table WHERE id IN (?,?,?)" ,pgList.toArray(new String[]{}));
内容虽没什么技术含量,但毕竟是自己努力解决的,必须要记录下!!!哈哈,大牛手下留情!!
相关文章推荐
- 为了方便维护,以后无论如何,数据库操作一定使用封装的强类型,或者自己封装的数据操作类。后记,使用分布式查询解决多个数据库之间的查询操作。
- 如何把批量数据导入到android 的 sqlite 数据库(更新中)
- 升级Android应用程序的思路-对数据库的操作(保留数据)
- 【Android 开发】:数据存储之 SQLite 数据库操作(三)
- mysql 常用命令,连接数据库,查看建表语句,批量导入数据,批量更新数据,连接查询
- android系统内置数据库SQLite的建库、建表、添加、删除、修改、查询等基本操作
- Sqlserver 在查询分析器里如何访问远程的的数据库,进行数据查询更新等操作。
- Android数据库操作-正确的把数据插入到数据库中
- android数据库操作(三)-----用listview显示数据库数据
- poi方式操作excel表格数据(数据库查询到的数据导入excel文件)
- Java在数据库操作中批量插入数据
- oracle 查询数据库操作 找回误删的数据 v$sql
- c#批量插入数据到数据库【支持事务操作】
- Android基础教程——数据存储之操作数据库SQLlite(一)
- Java操作Excel(三)将Excel中的数据批量的导入数据库
- Android 数据库操作 创建 添加 删除 查询
- android数据库批量导入数据
- Android应用开发之sqlite使用模糊查询数据库数据的三种方式
- 【Android 开发】:数据存储之 SQLite 数据库操作(二)