room
の場合 は文字タイプです(CREATE_TABLE_2
によるとそうです TEXT NOT NULL
として定義されている文字列 )、交換する必要があります:
KEY_ROOM + "=" + r
と:
KEY_ROOM + "= '" + r + "'"
あなたがそれを持っている方法では、あなたはクエリセグメントで終わります:
where room = kitchen1
kitchen1
がないことを不平を言っています その表の列、当然そうです。
引用すると、正しい結果になります:
where room = 'kitchen1'
これにより、カーソル作成行が次のようになります。
Cursor c = ourDatabase.query(DATABASE_TABLE2, columns,
KEY_ROOM + "='" + r + "'", null, null, null, null);
// ^^^^^^^^^^^^^^^^^^^^^^^^^
// Changed bit