Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Android Room - Obsługa listy obiektów w obiekcie i odpytywanie wyników

Pokój nie obsługuje tego bezpośrednio z powodu niektórych potencjalne problemy z leniwym ładowaniem , ale przy niektórych sztuczkach DAO jest to możliwe. Będziesz musiał obsługiwać wstawienia w sposób jawny, a do odpytywania wszystkiego na raz będziesz potrzebować POJO, aby to wszystko zawinąć.

@Entity(foreignKeys = {
    @ForeignKey(
            entity = PersonEntity.class,
            parentColumns = "personId",
            childColumns = "personIdFk",
            onDelete = CASCADE
    )
})
public class Pet {
    @PrimaryKey
    private String petId;
    private String name;
    private String personIdFk;
}

@Entity(tableName = "person")
public class PersonEntity {
    @PrimaryKey
    private String personId;
}

public class Person {
    @Embedded
    private PersonEntity personEntity;
    @Relation(parentColumn = "personId", entityColumn = "personIdFk")
    private List<Pet> pets;
}

@Dao
public abstract class PersonDao {

    @Insert
    protected abstract void insert(PersonEntity personEntity);

    @Insert
    protected abstract void insert(List<Pet> pets);

    @Transaction
    public void insert(Person person) {
        insert(person.getEntity());
        insert(person.getPets());
    }

    @Query("SELECT * FROM person")
    public abstract List<Person> getAll();

}

@Database(entities = {PersonEntity.class, Pet.class}, version = 1)
public abstract class AppDatabase extends RoomDatabase {

    public abstract PersonDao personDao();

}

Konstruktory, gettery i settery pominięte dla zwięzłości.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Instrukcja MySQL PREPARE w procedurach składowanych

  2. PDO::query a PDOStatement::execute (PHP i MySQL)

  3. Zamów w grupie według?

  4. Indeks daty i godziny Mysql nie działa podczas używania „lubię to”

  5. Sortowanie MySQL według obliczeń