android - 无法从使用 count() 的 sqlite 查询中检索结果

标签 android sqlite android-sqlite

public Cursor legsWorkout(){
    SQLiteDatabase db = this.getWritableDatabase();
    Cursor res = db.rawQuery("select count(*) from " + TABLE_W + " where w1="+ "Legs" + " or w2="
            + "Legs" + " or w3=" + "Legs",null);

    return res;
}

///other part


 Cursor res = myDB.bicepsWorkout();

            while (res.moveToFirst()){

                int totalCount = res.getInt(0);

                txtTest.setText(String.valueOf(totalCount));
            }

现在的问题是我无法检索数据,因为 res.getString/int 需要列名称/索引,并且从技术上讲,执行此查询时仅返回结果时没有列。

所以我收到此错误:android.database.sqlite.SQLiteException:没有这样的列:二头肌(代码1)

最佳答案

游标公开 SQLiteDatabase 上的查询结果。 不需要列名来获取结果,可以使用索引来获取查询结果。您可以使用案例中的第一个索引来获取计数。

   totalCount = res.getInt(0); //this will return the count value

关于android - 无法从使用 count() 的 sqlite 查询中检索结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50803549/

相关文章:

android - 我们可以将已准备好的SQLITE数据库用于手机应用程序吗?

mysql - 是否有与 MySQL 的 DESCRIBE [表] 等效的 SQLite?

ios - 通过 FMDB 将数组传递给 sqlite WHERE IN 子句?

android - 无法使用 WHERE 子句删除 SQLite 记录

java - 存储一项 Activity 的 Intent 但启动另一项 Activity

java - 避免在 ImageView android中多次单击

java - SQLite数据库不插入数据或查找项目(称为bear)

java - 表 * 没有名为 ** 的列

android - 在 RecyclerView 中保存 EditText 内容

java - Expandablelistview subview 呈现两次(尽管高度设置为 match_parent)