android中的getCount()没有返回行数

时间:2014-08-15 19:44:29

标签: android android-cursor

请检查我的代码.. getCount()方法没有返回表中的行数。它也提供了运行时异常,并且在打开应用程序时它会提供警告消息“不幸的应用已停止工作”

 public int getTotalRows() {

    String countQuery = "SELECT  * FROM " + TABLE_OOPBASICS;
    SQLiteDatabase db = this.getReadableDatabase();

    Cursor cursor = db.rawQuery(countQuery, null);

    cursor.close();


    return cursor.getCount();


}

该方法应返回表中的行数。

2 个答案:

答案 0 :(得分:1)

你正在关闭Cursor ..这就是原因。

cursor.getCount()

之后执行 cursor.close();
 public int getTotalRows() {

   String countQuery = "SELECT  * FROM " + TABLE_OOPBASICS;
   SQLiteDatabase db = this.getReadableDatabase();

   Cursor cursor = db.rawQuery(countQuery, null);

   if (cursor != null) {
      count = cursor.getCount();
      cursor.close();
   }

   return count;
}

答案 1 :(得分:0)

您看起来正在请求实际行,现在是行数。除非您的方法名称错误,否则您正在寻找类似

的内容
SELECT Count(*) FROM tblName