2011-08-24 65 views
1

如果在表中未找到查询条件,则查询调用将返回什么内容。游标将返回为空吗?这是在android中完成的。未找到与查询条件匹配的SQLite查询调用的光标

例子:

Cursor c = rawQuery("SELECT c_name, FROM my_table, WHERE c_name = ?", "johnny"); 

如果没有在列c_name没有约翰尼?游标值是否为空?

回答

5

将返回一个有效的游标,但它不包含任何结果。因此检查如

if (c.moveToFirst()) 

将返回false。

+2

你必须意识到游标可能为空,一旦你确定游标不为空,moveToFirst是检查它的正确方法。 –

+2

游标真的不应该是null。只有一个零元素的非null游标(moveToFirst返回null)确实表明请求未找到匹配项。否则,它可能是一些其他问题。 – njzk2