我见过这个问题。类似的错误。但在我的情况下它是不同的。
在使用 Room 时,我正在创建表格。它工作正常。
@Daointerface
UserDao {
@Query("SELECT * FROM user")
fun getAll(): List<User>
@Insert(onConflict = OnConflictStrategy.REPLACE)
fun insert(user: User)
@Delete
fun delete(user: User)}
但后来我发现所有表名都必须存储在不同的类中。像表名“用户”-> 存储在不同的类中。
例如。
class Table {
companion object {
const val USER_TABLE = "user"
}}
但下面的代码不起作用。它没有从 Table 类中获取表名。给出编译时错误。“注释参数必须是编译时间常数”请帮帮我。有什么问题
@Query("SELECT * FROM $Table.USER_TABLE")
fun getAll(): List<User>