0

これはうまくいくべきではありませんか?

Cursor cursor = ourDatabase.rawQuery("SELECT * FROM " + DATABASE_TABLE + " WHERE " +     KEY_NAME + " = \'chaman\'",, null);

わかりませんが、電話をかけようとするとエラーが発生します

cursor.getString(1);

CursorIndexOutofBoundsExceptionと表示されます

を使用してテーブルを作成しました

db.execSQL("CREATE VIRTUAL TABLE " + DATABASE_TABLE
                + " USING fts3 (" + KEY_ID
                + " INTEGER PRIMARY KEY AUTOINCREMENT, " + KEY_NAME
                + " TEXT NOT NULL, " + KEY_ADDRESS
                + " TEXT NOT NULL, " + KEY_CONTACT + " TEXT NOT     NULL, "
                + KEY_BALANCE + " DOUBLE);");

&データベースで見ることができるので、chamanは私のテーブルに存在すると確信しています。

どうしたの?私を助けてください。私はここ1時間立ち往生しています。:/

4

3 に答える 3

0

を使用してカーソルカウントを確認することをお勧めします。カウントcursor.getCount()が0より大きい場合はmoveToFirst、を実行してから、を使用して要素にアクセスしてみてください。cursor.getString(1)

于 2013-01-14T19:11:58.680 に答える
0

CursorIndexOutOfBoundExceptionは、呼び出すのを忘れたか、moveToFirst() 呼び出しmoveToFirst()が結果を確認しなかった(つまり、カーソルが空である)ことを意味します...

于 2013-01-14T19:09:04.227 に答える
0

あなたはに電話をかける必要がありますmoveToFirst

if(cursor.moveToFirst()) {  // returns false if no results
  // do stuff here
}
于 2013-01-14T19:09:47.743 に答える