我想知道在使用记录表时如何从类别名称访问类别名称



//我想在适配器和viewModel中访问类别的名称,而无需在ExpRecord类中添加名称

@Entity(tableName = "Category")
data class ExpCategory(
@PrimaryKey(autoGenerate = true) val id: Int,
@ColumnInfo(name = "category-name") val name: String )
@Entity(tableName = "Currency")
data class Currency(
@PrimaryKey(autoGenerate = true) val id: Int,
@ColumnInfo(name = "symbol") val symbol: String )

@Entity(tableName = "Record",
foreignKeys = [ ForeignKey(
entity = ExpCategory::class,
parentColumns = arrayOf("id"),
childColumns = arrayOf("expCategoryID"),
onDelete = ForeignKey.SET_NULL),
ForeignKey(
entity = Currency::class,
parentColumns = arrayOf("id"),
childColumns = arrayOf("currencyID"),
onDelete = ForeignKey.SET_NULL)])
data class ExpRecord (
@PrimaryKey(autoGenerate = true) val recordNumber: Int,
@ColumnInfo(name = "expCategoryID") val categoryId: Int,
@ColumnInfo(name = "currencyID") val currencyId: Int,
@ColumnInfo(name = "amount") val amount: Double,
@ColumnInfo(name = "date") val date: String,
@ColumnInfo(name = "notes") val note: String )

这可以通过使用Room dao查询多个表实现。参见访问多个表数据

最新更新