为什么这段代码返回异常?

时间:2012-05-08 08:14:53

标签: android database nullpointerexception

有人可以告诉我,为什么这段代码:

Boolean done = db.delete(ACCOUNTS_TABLE, KEY_ROWID, getIds(accounts)) > 0;

返回此异常?

  

05-08 10:09:36.074:E / AndroidRuntime(1955):java.lang.NullPointerException

函数返回字符串数组,所以一切都应该没问题

解决方案

在db

上删除一个名为close()之前

但是现在它返回了这个例外:

  

android.database.sqlite.SQLiteBindOrColumnIndexOutOfRangeException:绑定或列索引超出范围:handle 0x1eef920

1 个答案:

答案 0 :(得分:0)

如果那确实是异常中提到的有问题的行,那几乎可以肯定,因为db是一个空引用,或者可能是因为getIds抛出异常。

在没有更多信息的情况下告诉它有点困难但是,作为一个开始,我会放入一些东西来转储db变量,要么在变形之前,要么作为try/catch块的一部分电话。