小编Dav*_*esa的帖子

如何在不提供 id 的情况下自动生成 Room 数据库 id

我正在尝试创建一个房间数据库,我希望插入其中的每个项目都有自己唯一的 ID,而无需我提供它,问题是当我尝试将新项目插入数据库时​​,出现错误,要求我提供一个 ID。

这是我的实体:

    @Entity(tableName = "notes_table")
    data class Note(

    @PrimaryKey(autoGenerate = true)
    val id: Int = 0,

    @ColumnInfo(name = "description")
    val description: String,

    @ColumnInfo(name = "priority")
    var priority: Int)
Run Code Online (Sandbox Code Playgroud)

有没有办法让数据库创建自己的自动生成的自动递增 id 列,而无需我像这样添加它:

    val item = Note(id, item, priority)
    insert(item)
Run Code Online (Sandbox Code Playgroud)

而是这样做:

    val item = Note(item, priority)
    insert(item)
Run Code Online (Sandbox Code Playgroud)

sqlite android android-room android-architecture-components

3
推荐指数
1
解决办法
1881
查看次数