如何计算表中的no.of行?

时间:2012-04-27 09:41:19

标签: android sqlite

我试过这个来计算行数。但该计划正在搁置。

private int countbaglist()
{
    int count = 0;
    SQLiteDatabase db = datasource.getWritableDatabase();
    Cursor cursor = db.rawQuery(
        "select count(*) from shoplist where itemname=?",
        new String[] { String.valueOf("itemname") });

    while(cursor.moveToFirst())
    {
        count = cursor.getCount();
    }
    return count;
}

2 个答案:

答案 0 :(得分:2)

尝试此链接以获得答案

How to get the row count of a query in Android using SQLite?

删除以下代码中的while条件:

  while(cursor.moveToFirst()){
    count = cursor.getCount();
  }

替换下面的代码:

count = cursor.getInt(0)

答案 1 :(得分:2)

它因为你的while循环永不退出而挂起。请改为使用一次while支票替换if。另请注意,您需要读取从COUNT查询返回的整数值,而不是光标的行计数,它始终为1。

if (cursor.moveToFirst())
    count = cursor.getInt(0);