Java 使用游标从SQLite数据库获取值并转换为int
这可能不是从数据库中的列中获取值的最佳方法,但到目前为止,我掌握了以下内容: 我有一个名为switches的表和一个名为levels的列。列级别是一个整数值列。我想从levels列中获取整数值。我该怎么做?我试过了,但是我无法得到整数值而不是光标 这是我的密码:Java 使用游标从SQLite数据库获取值并转换为int,java,android,sqlite,Java,Android,Sqlite,这可能不是从数据库中的列中获取值的最佳方法,但到目前为止,我掌握了以下内容: 我有一个名为switches的表和一个名为levels的列。列级别是一个整数值列。我想从levels列中获取整数值。我该怎么做?我试过了,但是我无法得到整数值而不是光标 这是我的密码: SQLiteDatabase sqLiteDatabase; sqLiteDatabase = dbHandler.getReadableDatabase(); s
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());
问题是游标不是整数,所以我想先转换为字符串,然后再转换为int,但似乎我遇到了数字格式的异常。我想这是因为光标给了我列名和整数值
如何使用原始SQL和SQLite数据库获取特定列的整数值 在这行代码之后
cursor = sqLiteDatabase.rawQuery(select_level, null);
添加下面的代码
while (cursor.moveToNext()) {
level = cursor.getInt(0);
}
哦,我明白了,如果我想填充一个列表,如果我有几个级别,我想把我从数据库中得到的级别放入一个列表中?也就是说,出于某种原因,上面给出了db表中的最后一个值。如果我想要第一个值怎么办?@Euridice01,要从db获取第一个值,请相应地修改select查询。可能Asc的订单也会有帮助。。。或者在while语句中,在赋值后添加break语句。那会解决你的目的。