Nếu room
là một loại ký tự (và nó là, theo CREATE_TABLE_2
chuỗi nơi nó được định nghĩa là TEXT NOT NULL
), bạn cần thay thế:
KEY_ROOM + "=" + r
với:
KEY_ROOM + "= '" + r + "'"
Theo cách bạn có, bạn đang kết thúc với phân đoạn truy vấn:
where room = kitchen1
và phàn nàn rằng không có kitchen1
trong bảng đó, đúng như vậy.
Bằng cách trích dẫn nó, bạn sẽ có câu trả lời chính xác:
where room = 'kitchen1'
Điều này sẽ biến dòng tạo con trỏ thành:
Cursor c = ourDatabase.query(DATABASE_TABLE2, columns,
KEY_ROOM + "='" + r + "'", null, null, null, null);
// ^^^^^^^^^^^^^^^^^^^^^^^^^
// Changed bit