【发布时间】:2015-01-16 14:11:44
【问题描述】:
在从 sqlite 检索数据时遇到异常。
11-19 11:37:43.357:E/AndroidRuntime(1494):java.lang.IllegalStateException:无法从 CursorWindow 读取第 0 行第 -1 行。确保 Cursor 在从中访问数据之前已正确初始化。
查询是 -
Cursor c= db.rawQuery("SELECT * FROM "+OpenHelper.TABLE_ACTIVITY_DETAIL+" WHERE "+OpenHelper.Activity_Date+" = '"+date+"'",null);
if(c != null){
if (c.moveToFirst()){
do{
task=c.getString(c.getColumnIndex("task"));
activityList.add(""+task);
}while(c.moveToNext());
}
}
c.close();
db.close();
有什么办法吗?
【问题讨论】:
-
date变量的值是多少? -
字符串格式的日期
-
错误来自访问列。当游标中不存在列时,-1 通常是返回值
getColumnIndex()。如果您需要帮助,请发布更多代码。 -
@yuvaツ 你能发布你的完整代码吗?获取光标后你在做什么?
-
所以你的活动详情表没有
task列。
标签: java android sqlite cursor