android游标如何从列中获取空值

use*_*175 11 java sql sqlite android

我保留所有数据作为对象存储在数据库中(例如,而不是int我使用Integer)以保持空值.

如果Object为null,将数据保存到SQLite数据库时,我使用:

statement.bindNull(index);
Run Code Online (Sandbox Code Playgroud)

当我使用SQLiteManager查看我的数据库时,似乎正确存储了值(具有空值的Long列的空字段).

但是如何从游标保存空信息中读取值?

如果我使用:

cursor.getLong(7)
Run Code Online (Sandbox Code Playgroud)

对于我有null的列,而不是null,我得到0.因为getLong返回long类型值而不是Long,这并不奇怪.但是我找不到任何返回Long的函数.有帮助吗?当然我还需要为其他对象(整数,字符串等)保留函数.

Gra*_*and 38

您需要检查它是否为空.

Long l = null;
if (!cursor.isNull(7))
    l = cursor.getLong(7);
Run Code Online (Sandbox Code Playgroud)