Android 数据库批量查询数据的操作

             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[]{}));
   

    内容虽没什么技术含量,但毕竟是自己努力解决的,必须要记录下!!!哈哈,大牛手下留情!!


你可能感兴趣的:(Android)