-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に null 参照であるかgetIds、例外をスローするためです。

詳細な情報がないと判断するのは少し難しいですが、最初に、db事前に、またはtry/catch呼び出しの周りのブロックの一部として、変数をダンプするために何かを入れます。

于 2012-05-08T08:17:22.323 に答える