0

次のクエリを実行しようとしています。

try {

        if (db != null){
        cursor = db.rawQuery("SELECT fp_id, COUNT(*) FROM rssi WHERE (mac = '20:aa:4b:d3:db:d6' and (rssi > -72 and rssi < -64)) OR (mac = '08:86:3b:f1:da:18' and (rssi > -63 and rssi < -55)) group by fp_id",null);
        }
        int cursorSize = cursor.getCount();
        DatabaseUtils.dumpCursor(cursor);
    }

私はcursorSize = 0を取得します。これは明らかにrawQuery()が機能しないことを意味します。WHERE 句を削除してテストしたところ、問題なく動作しました。WHERE では機能しません。どんな助けでも大歓迎です...

4

1 に答える 1

1

SQLite データベースのテーブルとその列の 1 つに同じ名前を使用することは許容されますが、これは android では機能しません。したがって、テーブルまたはそのフィールドの名前を変更すると、問題が解決します。注: データベースをアップグレードする (バージョン番号を増やす) ことが重要です...

于 2013-07-26T08:10:51.623 に答える