-3

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

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:绑定或列索引超出范围:句柄 0x1eef920

4

1 回答 1

0

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

如果没有更多信息,这有点难以判断,但作为开始,我会预先放入一些东西来转储db变量,或者预先或作为try/catch调用周围块的一部分。

于 2012-05-08T08:17:22.323 回答