room返回dao中的不同实体

xzabzqsa  于 2021-07-24  发布在  Java
关注(0)|答案(2)|浏览(683)

我有一把刀

@Dao
interface UserDao {

     @Query("SELECT * FROM user_entity")
     fun getAll(): List<UserEntity>

     @Query("SELECT COUNT(id) AS count FROM user_entity")
     fun getCombined(): UserCombinedEntity
}

课程是

@Entity
data class UserEntity(
    @ColumnInfo
    val id: Long,
    @ColumnInfo
    val name: String
)

data class UserCombinedEntity(
    val count: Int
)

但这给了我一个错误
执行org.jetbrains.kotlin.gradle.internal.kaptexecution时出错
房间真的能支持吗?
这是这个问题的一个极小的例子。当然 UserCombinedEntity 有更多的领域。

tuwxkamq

tuwxkamq1#

这有点奇怪,因为kotlin提供的错误没有什么帮助。解决办法是确保 count 是一个 var .

data class UserCombinedEntity(
    var count: Int
)
zynd9foi

zynd9foi2#

int不需要组合实体,返回int更容易。

@Query("SELECT COUNT(id) FROM word  ")

int getAllCount();

相关问题