继承自上面两篇的文章。本篇主要介绍分页查询和查询的总记录数:
方法为:
/** * * * @param pageSize * 每一页数据的大小 比如20个数据 * @param pageNum * 多少页 比如 第一页 第二页 * @return */ public List<Account> queryPage(int pageSize,int pageNum) { String index = (pageNum - 1) * pageSize + ""; // 索引 翻页时的起始索引 String count = pageSize + ""; // 查询多少条数据 List<Account> List = new ArrayList<Account>(); sqliteDatabase db = helper.getReadableDatabase(); Cursor c = db.rawquery("SELECT * FROM account liMIT ?,?",new String[] { index,count });// 查询表中所有的数据 while (c.movetoNext()) { int ID = c.getInt(c.getColumnIndex("_ID")); String name = c.getString(c.getColumnIndex("name")); int balance = c.getInt(c.getColumnIndex("balance")); List.add(new Account(ID,name,balance)); } c.close(); db.close(); return List; } /** * * 查询总共有多少条数据 * * @return */ public int queryCount() { sqliteDatabase db = helper.getReadableDatabase(); Cursor c = db.rawquery("SELECT COUNT(*) FROM account",null); c.movetoNext(); int count = c.getInt(0); c.close(); db.close(); return count; }
测试的方法为:
public voID testqueryPage(){ AccountDao dao = new AccountDao(getContext()); List<Account> List = dao.queryPage(20,1); for (Account account : List) { System.out.println(account); } } public voID testqueryCount(){ AccountDao dao = new AccountDao(getContext()); System.out.println(dao.queryCount()); }总结
以上是内存溢出为你收集整理的SQLite相关知识点三全部内容,希望文章能够帮你解决SQLite相关知识点三所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)