使用db.Create和db.FirstOrCreate将数据保存到数据库时,“ID”列的值为“0”

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用db.Create和db.FirstOrCreate将数据保存到数据库时,“ID”列的值为“0”相关的知识,希望对你有一定的参考价值。

我正在使用“do.FirstOrCreate”检查我的数据,如果我的表中不存在数据,我想要创建数据,除了未生成“ID”(“ID”列的值为0)之外,一切正常。

这是我的代码:

domain object

enter image description here

codes calling db.FirstOrCreate

enter image description here

这是插入我的用户表的数据:

enter image description here

gorm版本是:1.9.1

答案

将您的定义更改为如下所示

type User struct {
  gorm.Model
  ID int `gorm:"AUTO_INCREMENT"`
  ..
  ..
}

以上是关于使用db.Create和db.FirstOrCreate将数据保存到数据库时,“ID”列的值为“0”的主要内容,如果未能解决你的问题,请参考以下文章