Я работаю с библиотекой настойчивости в android, я был бы признателен, если кто-то может помочь мне в использовании внешнего ключа, как получить данные с помощью внешнего ключа.
Как использовать внешний ключ в библиотеке сохранения номеров
Ответ 1
Есть хороший урок, который я использовал:
https://medium.com/@tonyowen/room-entity-annotations-379150e1ca82
он также дает информацию о: @embeded, @ignore,@ColumnInfo
Когда мы используем внешний ключ, не забудьте поставить onDelete = ForeignKey.CASCADE
таким образом, если вы удалите данные, это также приведет к удалению зависимости. Таким образом, у вас не будет ложных данных или данных, которые никогда не используются
Ответ 2
Просто подведу итог вышеприведенным постам для будущих читателей:
Синтаксис внешнего ключа в Kotlin
@Entity(foreignKeys = arrayOf(ForeignKey(entity = ParentClass::class,
parentColumns = arrayOf("parentClassColumn"),
childColumns = arrayOf("childClassColumn"),
onDelete = ForeignKey.CASCADE)))
Синтаксис внешнего ключа в Java:
@Entity(foreignKeys = @ForeignKey(entity = ParentClass.class,
parentColumns = "parentClassColumn",
childColumns = "childClassColumn",
onDelete = ForeignKey.CASCADE))
Вы можете обратиться к официальной документации для получения дополнительной информации. https://developer.android.com/reference/android/arch/persistence/room/ForeignKey.html