я видел этот вопрос. Похожая ошибка, но в моем случае она другая.
Работая с Room, я создавал таблицу. он работал нормально.
@Daointerface
UserDao {
@Query("SELECT * FROM user")
fun getAll(): List<User>
@Insert(onConflict = OnConflictStrategy.REPLACE)
fun insert(user: User)
@Delete
fun delete(user: User)}
но потом я обнаружил, что все имена таблиц должны храниться в другом классе. например, имя таблицы "пользователь" -> Хранится в другом классе.
Eg.
class Table {
companion object {
const val USER_TABLE = "user"
}}
Но код ниже не работает. он не берет имя таблицы из класса Table. Выдает ошибку времени компиляции. «Аргумент аннотации должен быть константой времени компиляции», пожалуйста, помогите мне. Что в нем не так
@Query("SELECT * FROM $Table.USER_TABLE")
fun getAll(): List<User>