我正在使用SQLite数据库存储和检索我的应用数据,以及检查重复条目的内容。我尝试检索标题匹配的所有条目,如下:
Cursor c = mDb.query(DatabaseHelper.GOALS_TABLE_NAME,
new String[] { Goals.GOAL_ID, Goals.TITLE },
Goals.TITLE + "='" + title + "'", null, null, null,
null, null);
其中title是要比较的标题。
此查询运行,但游标计数为-1。没有where子句的调用也返回-1,但我知道数据存在,因为我能够将列表视图绑定到它。
我有什么遗漏,我是否必须以某种方式填充光标?
提前致谢,
Venatu
答案 0 :(得分:15)
执行query()
时,会立即返回Cursor
。查询本身尚未运行。只有在执行需要数据加载的操作时才会执行查询。首先尝试执行另一种方法(例如moveToFirst()
),然后再调用getCount()
,看看是否会改变一切。