查询是否返回空游标

时间:2014-04-17 18:30:31

标签: android android-sqlite android-cursor

我总是看到人们说它cursor is never null所以你不需要检查是否为null,但是还有其他人说光标可以为空,你总是要检查它。

所以查看查询方法here它确实显示返回null,所以我不知道我是否只是缺少一些东西,或者是人们说游标永远不会出错?

在进行查询时,您是否需要检查Cursor是否为空?

3 个答案:

答案 0 :(得分:8)

对于ContentResolver次查询,是的,返回的Cursor可以是null,如您链接的代码所示。

对于SQLiteDatabase次查询,不,不需要检查null Cursor。虽然没有太大的伤害。

答案 1 :(得分:1)

SQliteDatabase.query()返回一个Cursor对象,该对象位于第一个条目之前。游标永远不会为null但它可以为空。

对于ContentResolver queries,它可以为null。请检查此SO question

答案 2 :(得分:0)

安全并使代码稳固,检查是否为null。 您可以参考this code from Android。我们可以看到它可以变为空。