J'ai ajouté beaucoup de relation dans la Chambre à l'aide de la Relation. J'ai fait référence à ce post pour écrire le code suivant pour relation dans la Chambre.
La poste indique comment lire les valeurs de la base de données mais en les stockant les entités dans la base de données a entraîné userId
à être vide, ce qui signifie qu'il n'existe pas de relation entre les 2 tables.
Je ne suis pas sûr de ce qui est la façon idéale de l' insert
un User
et List of Pet
dans la base de données tout en ayant userId
de la valeur.
1) L'Utilisateur De L'Entité:
@Entity
public class User {
@PrimaryKey
public int id; // User id
}
2) Pet Entité:
@Entity
public class Pet {
@PrimaryKey
public int id; // Pet id
public int userId; // User id
public String name;
}
3) UserWithPets POJO:
// Note: No annotation required at this class definition.
public class UserWithPets {
@Embedded
public User user;
@Relation(parentColumn = "id", entityColumn = "userId", entity = Pet.class)
public List<Pet> pets;
}
Maintenant extraire les enregistrements de DB on utilise DAO
:
@Dao
public interface UserDao {
@Insert
fun insertUser(user: User)
@Query("SELECT * FROM User")
public List<UserWithPets> loadUsersWithPets();
}
MODIFIER
J'ai créé ce problème https://issuetracker.google.com/issues/62848977 sur le bug tracker. J'espère qu'ils vont faire quelque chose la concernant.