Я знаю, что есть много постов на эту тему, но все они имеют дело с SQLite ... (мое о Room).
У меня есть отношение «один ко многим» между таблицей «Карта» и таблицей «Палуба».Таким образом, у карты есть 1 колода, а в колоде много карт.Вставка и удаление в порядке для 1 строки, но я хотел бы удалить карты из колоды, когда эта будет удалена: при удалении каскадных отношений.
Мой код:
(Card.class)
@Entity(tableName = "cards")
public class Card{
@PrimaryKey(autoGenerate = true)
@ColumnInfo(name = "id")
public int id;
@ColumnInfo(name = "face1")
public String face1;
@ColumnInfo(name = "face2")
public String face2;
@ColumnInfo(name = "id_deck")
@ForeignKey(entity = Deck.class, parentColumns = "id", childColumns =
"id_deck", onDelete = CASCADE)
public int id_deck;
}
Deck.class:
@Entity(tableName = "decks")
public class Deck {
@PrimaryKey(autoGenerate = true)
@ColumnInfo(name = "id")
public int id;
@ColumnInfo(name = "nom")
public String nom;
public Deck(String nom){
this.nom = nom;
}
}
Я что-то не так сделал?Когда я снимаю колоду, карты все еще существуют.