W moim nowym projekcie używam biblioteki trwałości pokoju systemu Android. Chcę zaktualizować niektóre pola tabeli. Próbowałem jak w moim Dao
-
// Method 1:
@Dao
public interface TourDao {
@Update
int updateTour(Tour tour);
}
Ale kiedy próbuję zaktualizować za pomocą tej metody, aktualizuje ona każde pole jednostki, w której pasuje do wartości klucza podstawowego obiektu wycieczki. używałem@Query
// Method 2:
@Query("UPDATE Tour SET endAddress = :end_address WHERE id = :tid")
int updateTour(long tid, String end_address);
Działa, ale w moim przypadku będzie wiele zapytań, ponieważ mam wiele pól w mojej encji. Chcę wiedzieć, jak mogę zaktualizować niektóre pola (nie wszystkie), na przykład Method 1
gdzie id = 1; (id to automatycznie generowany klucz podstawowy).
// Entity:
@Entity
public class Tour {
@PrimaryKey(autoGenerate = true)
public long id;
private String startAddress;
private String endAddress;
//constructor, getter and setter
}