我试过这个来计算行数。但该计划正在搁置。
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;
}
答案 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);