Mise à jour de certaines champ spécifique d'une entité android Chambre

Je suis en utilisant android chambre persistance de la bibliothèque pour mon nouveau projet.
Je veux mettre à jour le champ de la table.
J'ai essayé dans mon Dao -

//Method 1:

@Dao
public interface TourDao {
    @Update
    int updateTour(Tour tour);
}

Mais quand j'essaie de mettre à jour en utilisant cette méthode, puis il met à jour tous les champs de l'entité à laquelle elle correspond à la valeur de la clé primaire de la tour de l'objet.
J'ai utilisé @Query

//Method 2:

@Query("UPDATE Tour SET endAddress = :end_address WHERE id = :tid")
int updateTour(long tid, String end_address);

Il travaille, mais il y aura beaucoup de requêtes dans mon cas, car j'ai beaucoup de champs dans mon entité. Je veux savoir comment puis-je mettre à jour certaines (pas toutes) comme Method 1 where id = 1; (id est automatiquement générer la clé primaire).

//Entity:

@Entity
public class Tour {
    @PrimaryKey(autoGenerate = true)
    public long id;
    private String startAddress;
    private String endAddress;
    //constructor, getter and setter
}
  • Comment mettre à jour une liste au Tableau. En fait, j'ai inséré la liste dans le Tableau par TypeConverter. Mais tandis qu'à venir avec la mise à jour il ne fonctionne pas. Veuillez indiquer, si vous avez fait face à aucun problème de ce genre.
  • Avez-vous eu des solution pour le commentaire ci-dessus?