本文主要是介绍kotlin Room UNIQUE constraint failed,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
似乎是 autoGenerate = true不起作用,但是java代码并没有问题,正常写有注解@PrimaryKey(autoGenerate = true)对应的字段创建是不需要对主键赋值,但是kotlin的检测是你不赋值或者有空检测(?=null),代码不会让你编译的,真是贼坑啊!!!!!!
解决方法只需要提前将主键赋值val accountId:Int=0
package com.yuge.passwords.db.entityimport androidx.room.Entity
import androidx.room.PrimaryKey@Entity(tableName = "table_account")
data class Account (@PrimaryKey(autoGenerate = true)val accountId:Int=0,//账户名var accountName:String?=null,//用户名var username:String?=null,//密码var password:String?=null,//备注var remark:String?=null,//查询次数var searchNum:Int?=null,//重要等级var grade:Int?=0,//是否是自动生成var isAutoGenerate:Boolean?=false
)
这篇关于kotlin Room UNIQUE constraint failed的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!