我在SQLite数据库中的表结构如下。 我无法从光标对象获取数据
在我的SqliteOpenHelper类中,我写了下面的方法。
public Form getAllForms(){
SQLiteDatabase db = this.getReadableDatabase();
Cursor cursor = db.rawQuery("select * from "+FORM_TABLE, null);
int count = cursor.getCount();
String formID = cursor.getString(0);
Form form = new Form();
form.setId(formID);
cursor.close();
db.close();
return form;
}
我敢肯定有它的一些数据,因为我已经看过在调试模式下count
,我看到的是实际存在于数据库行的数量。但是CursorIndexOutOfBoundException在cursor.getString(0)处显示。加上cursor.getInt(0)和cursor.getString(1)也不起作用。这可能是什么问题?
'while(cursor.moveToNext()){...}'会更简单。 –
@CL。它假定光标处于-1,这是一个有效的假设,但不是无处不在。 – laalto
Yap ..,我只是忘记moveToFirst。非常感谢你laalto。 –