使用游标从SQLite数据库中获取值并转换为int

时间:2014-11-05 20:44:40

标签: java android sqlite

这可能不是从数据库中的列中获取值的最佳方法,但这是我到目前为止所拥有的:

我有一个名为switches的表,其中包含一个名为levels的列。列级别是整数值列。我想从levels列中获取整数值。我怎样才能做到这一点?我试过这个但是我无法获得整数值而不是获取Cursor。

这是我的代码:

            SQLiteDatabase sqLiteDatabase;
            sqLiteDatabase = dbHandler.getReadableDatabase();
            sqLiteDatabase.beginTransaction();
            Cursor cursor;
            Integer level;

            String select_level = "SELECT level FROM switches";

            cursor = sqLiteDatabase.rawQuery(select_level, null);
            level = Integer.parseInt(cursor.toString());

问题是Cursor不是一个整数,所以我想转换为字符串然后int但似乎我得到一个数字格式异常。我认为这是因为光标给了我列名和整数值。

如何使用原始SQL和SQLite数据库获取特定列的整数值?

1 个答案:

答案 0 :(得分:4)

在这行代码之后,

cursor = sqLiteDatabase.rawQuery(select_level, null);

添加以下代码

while (cursor.moveToNext()) {
level = cursor.getInt(0);
}