Sto usando la libreria di persistenza della stanza Android per il mio nuovo progetto. Voglio aggiornare qualche campo della tabella. Ho provato come nel mio Dao
-
// Method 1:
@Dao
public interface TourDao {
@Update
int updateTour(Tour tour);
}
Ma quando provo ad aggiornare utilizzando questo metodo, aggiorna ogni campo dell'entità in cui corrisponde al valore della chiave primaria dell'oggetto tour. ho usato@Query
// Method 2:
@Query("UPDATE Tour SET endAddress = :end_address WHERE id = :tid")
int updateTour(long tid, String end_address);
Funziona ma ci saranno molte domande nel mio caso perché ho molti campi nella mia entità. Voglio sapere come posso aggiornare alcuni campi (non tutti) come Method 1
dove id = 1; (id è la chiave primaria di generazione automatica).
// Entity:
@Entity
public class Tour {
@PrimaryKey(autoGenerate = true)
public long id;
private String startAddress;
private String endAddress;
//constructor, getter and setter
}