gpt4 book ai didi

android - 房间 : Conflicting Declarations

转载 作者:行者123 更新时间:2023-11-29 00:53:18 27 4
gpt4 key购买 nike

我想在当前 pb 中添加值、日期和详细信息。我在 pbInfo 的数据库中收到错误“冲突声明”。我应该如何修复此错误?

@Entity(tableName = "pb_table")
data class Pb(@PrimaryKey
val pb: String)

@Entity
data class PbInfo(@PrimaryKey
var value: Double,
var date: Int,
var details: String)

@Dao
interface PbInfoDao {


@Insert
fun update(vararg pbInfo: PbInfo): LongArray

 INSTANCE?.let { database ->
scope.launch {
populateDatabase(database.pbDao(), database.pbInfo())
}
}
}
suspend fun populateDatabase(pbDao: PbDao, pbInfoDao: PbInfoDao) {
pbDao.deleteAll()

var pb = Pb("Squat")
pbDao.insert(pb)
var pbInfo = PbInfo(122.5, 28, "I was feeling on top form today!")

最佳答案

首先,你在一个类中有两个实体(可能是冲突的)

因此,为单独的 Entity 添加单独的类。

然后,在您的 RoomDatabase 抽象类中,像这样添加两个实体类(同时创建单独的 Dao 接口(interface)类):

@Database(entities = [(Pb::class), (Pbinfo::class)] ,version = 2)
abstract class YourRoomDatabaseClass: RoomDatabase(){
...
abstract fun pbDao() : PbDao
abstract fun pbinfoDao(): PbinfoDao
...
}

这应该可以解决实体类的冲突。我有一个包含两个实体的数据库,并且运行没有任何问题。 (请注意我,因为我不知道 Kotlin 语法)

关于android - 房间 : Conflicting Declarations,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57445956/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com