尝试使用 Room 库时出错。 [SQLITE_ERROR] SQL 错误或缺少数据库

Error when trying to use Room library. [SQLITE_ERROR] SQL error or missing database

我正在尝试使用新的房间库,但出现此错误

Error: There is a problem with the query: [SQLITE_ERROR] SQL error or missing database (no such table: Station)

Error: Not sure how to convert a Cursor to this method's return type

Warning: Schema export directory is not provided to the annotation processor so we cannot export the schema. You can either provide room.schemaLocation annotation processor argument OR set exportSchema to false.

Error:org.gradle.api.internal.tasks.compile.CompilationFailedException: Compilation failed; see the compiler error output for details.

RoomDatabase.kt

@Database(entities = TrolleyType::class), version = 2)
abstract class AppDatabase : RoomDatabase() {
    abstract fun stationDao(): StationDao
}

MyDao.kt

@Dao
interface MyDao {
    @get:Query("SELECT * FROM Station")
    val stations: List<Station>


    @get:Query("SELECT * FROM TrolleyType")
    val trolleyTypes: List<TrolleyType>
}

实体

@Entity
data class Station(
        @PrimaryKey @ColumnInfo(name = "_id") var id: Int = 0,
        @ColumnInfo(name = "StationName") var stationName: String? = "",
        @ColumnInfo(name = "StationArabic") var stationArabic: String? = ""
)

@Entity
data class TrolleyType(
        @PrimaryKey @ColumnInfo(name = "_id") var id: Int = 0,
        @ColumnInfo(name = "Type") var stationName: String? = "",
        @ColumnInfo(name = "TypeArabic") var stationArabic: String? = ""
)

原来我只是忘记将 Station 实体添加到 RoomDatabase

添加后一切正常

@Database(entities = TrolleyType::class, Station::class), version = 2)
abstract class AppDatabase : RoomDatabase() {
    abstract fun stationDao(): StationDao
}