JSenen / CarControl

Actividad Aprendizaje_1EVA_2DAM_PROGRAMACION_MULTIMEDIA_DISPOSITIVOS_MOVILES
0 stars 0 forks source link

Relación ROOM varias tablas (OneToMany) #1

Closed JSenen closed 1 year ago

JSenen commented 1 year ago

1º Debemos introducir las Entidades en la declaración de la AppDataBase: `@Database(entities = {Cars.class, Revision.class}, version = 1) public abstract class AppDatabase extends RoomDatabase {

public abstract CarsDAO carsDAO();
public abstract RevisionDAO revisionDAO();

}`

Creamos una Entidad con las 2 claves primarias de las que queremos relacionar. 1 la propagamos al lado M.

public class CarsAndRevision { @Embedded public Cars car; @Relation( parentColumn = "car_id", entityColumn = "revCarId" ) public List<Revision> revisionList; }

Y cremos el DAO con la consulta de M

`@Dao public interface CarsAndRevisionDAO {

@Transaction
@Query("SELECT * FROM cars")
public List<CarsAndRevision> getCarAndRevision();

}`