首页 > 解决方案 > 如何使用 Android Room Persistant Library 从没有主键的表中迁移?

问题描述

我有在 android 中顺利运行的 SQLite 数据库,但我想将它迁移到 Room Persistant 库。这是该表的 SQL。

CREATE TABLE ACCOUNT (id INTEGER, ownerPersonId INTEGER);

我在房间中成功加载了预构建 SQLite 数据库,但是当我尝试添加 Account 表时,它说:

 An entity must have at least 1 field annotated with @PrimaryKey

这是帐户表:

@Entity(tableName = "ACCOUNT")
data class Account(var id: Int?, var ownerPersonId: Int?)

我知道我必须添加 @PrimaryKey 注释,但添加此注释会导致与预构建数据库不匹配并给出此错误。

Pre-packaged database has an invalid schema

谁能告诉我在这种情况下该怎么做。如何在没有错误的情况下迁移预构建数据库?

标签: androidandroid-sqliteandroid-room

解决方案


推荐阅读