首页 > 解决方案 > 如何从android sqlite中的特定单元格检索Real类型数据?

问题描述

在此处输入图像描述

在此表中,我想检索变量中的值 55.2。该值位于第 5 行 (ID=5) 和 REAL 类型的“重量”列中。

我已经可以获得存储在“lastID”中的所需行号,并且我知道我的数据在“重量”列中。所以我的 X 和 Y 在表中。

我也知道在我的光标中检索 55.2 的 sqlite 命令:

Cursor cursor2 = db.rawQuery("SELECT Weight FROM <MYTABLE> WHERE ID=" + lastID, null);
Double lastWeight = cursor2.getDouble(0);  //This line is wrong, I need the help here!

但是我无法从 cursor2 的变量 lastWeight 中获得我正在寻找的 55.2 值。

任何的想法?

附录

这里创建表:

String CREATE_TABLE2 = "CREATE TABLE " + <MYTABLE> + " (" + UID2 + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
                COL_2 + " TEXT," + COL_3 + " TEXT," + COL_4 + " REAL," + COL_5 + " REAL);";
db.execSQL(CREATE_TABLE2);

标签: javaandroidsqliteandroid-sqlite

解决方案


此行执行后:

Cursor cursor2 = db.rawQuery("SELECT Weight FROM <MYTABLE> WHERE ID=" + lastID, null);

你得到的结果cursor2。实例 like
用于循环遍历其行,为此,您必须首先将其索引放在第一行 by :Cursorcursor2moveToFirst()

if (cursor2.moveToFirst()) {
    Double lastWeight = cursor2.getDouble(0);
    ........................................
}

if语句是必需的,以防游标不包含任何行。


推荐阅读