Итак, я использую сущность в базе данных комнат персистентности.У меня есть несколько столбцов, но я хочу, чтобы только один из них был загружен в ActivityA.Позже в ActivityB я использую все остальные сделанные мной столбцы.Предупреждение, которое я получаю от Room, - CURSOR_MISMATCH, и он хочет, чтобы я игнорировал другие поля, это не то, что я хочу, поскольку я использую их в ActivityB.
Entity:
@Entity(tableName = "persons")
public class oPerson implements Parcelable {
@PrimaryKey(autoGenerate = true)
private int id;
@ColumnInfo(name = "personName")
private String personName;
@ColumnInfo(name = "personRank")
private String personRank;
@ColumnInfo(name = "personAge")
private String personAge;
@ColumnInfo(name = "personAvailabilityMonday")
private String personAvailabilityMonday;
@ColumnInfo(name = "personAvailabilityTuesday")
private String personAvailabilityTuesday;
@ColumnInfo(name = "personAvailabilityWednesday")
private String personAvailabilityWednesday;
@ColumnInfo(name = "personAvailabilityThursday")
private String personAvailabilityThursday;
@ColumnInfo(name = "personAvailabilityFriday")
private String personAvailabilityFriday;
@ColumnInfo(name = "personAvailabilitySaturday")
private String personAvailabilitySaturday;
@ColumnInfo(name = "personAvailabilitySunday")
private String personAvailabilitySunday;
}
Дао-запрос для ActivityA:
@Query("SELECT * FROM persons")
LiveData<List<oPerson>> getPersons();
Дао-запрос для ActivityB:
@Query("SELECT personName, id FROM persons")
LiveData<List<oPerson>> getPersonName();
If I Log.I ();моя сущность, которую я получаю для ActivityA:
[Entity{id: 'actual id', name: 'actual name', rank: 'actual rank', age: 'actual age' etc...},Entity{same as first}]
Если я регистрирую ActivityB:
[Entity{id: 'actual id', name: 'actual name', rank: 'null', age: 'null' etc...},Entity{same as first}]
Итак (поправьте меня, если я ошибаюсь) в ActivityB он загружает столбцы, которые мне не нужны, а также.Я надеюсь, что если я получу ответ, он будет примерно таким:
[Entity{id: 'actual id', name: 'actual name'},Entity{same as first}]
Так что теперь без других столбцов.Я не уверен, что это правильный путь, я вроде как новичок в Android и настойчивость комнаты.