我在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。 –