2016-11-19 53 views
0

java.lang.IllegalStateException:無法從CursorWindow讀取第30行,第9列。在從中訪問數據之前,確保Cursor已正確初始化。Android中的SqLite。一切正常,但突然出現錯誤

這是我的代碼。

Cursor cursor = dataBase.query("MyBooks", null, null, null, null, null, "COLUMN_LAST_OPEN"); 
cursor.moveToFirst(); 
if (!cursor.isAfterLast()) { 
    do { 
     path = cursor.getString(9); //exception arises here 

    } while (cursor.moveToNext()); 
} 

異常的光標位置而產生122例外雖然說行30.如果我更改代碼,從最終迭代通過調用cursor.moveToPrevious那麼它的工作開始。

+0

結果集中是否有10列?你的數據庫連接是否工作? (不是我的downvote) –

+0

有12列124行。所有的行掃描完美,但只有在使用moveToPrevious –

+0

進行訪問時,行122纔會掃描我的數據庫文件的備份,並在刪除該行程序後工作。但我想了解可能會導致此類錯誤的原因。 –

回答

0

現在我發現android中的Cursor不能保存超過1 Mb的數據。這是例外的原因。

相關問題