2016-11-19 57 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的数据。这是例外的原因。

相关问题