rawQueryを使用してDBテーブルからレコードをフェッチしました。ログからクエリを確認しましたが、SQLiteで完全に実行されています。しかし、cursor.getCountは間違った行数を返し、カーソルには間違った結果セットが含まれています。私は次のコードを使用しました:
Cursor productCursor = dataHelper.rawQuery(query_str, null);
int list_count = productCursor.getCount();
Log.d("list_count", ""+list_count);
productCursor.moveToFirst();
while(productCursor.isAfterLast() == false) {
......
}
実際には4つのレコードがありますが、カーソルには3つのレコードしか含まれていません。SQLiteでテストし、正しい結果セットを取得しました。誰かが私のせいを指摘できれば助かります。