猿问

如何定义 GORM 自动递增的起始值

我在我的项目中使用了gorm,我需要为其自增功能设置一个起始值。我尝试添加这一行,但没有任何进展:


type User struct {

    gorm.Model

    ID         uint `gorm:"primarykey;autoIncrement:100"`

    Email      string `gorm:"not null; unique" form:"email" binding:"required"`

}

我如何为 gorm AutoIncrement 函数定义一个起始值,如 100?


明月笑刀无情
浏览 569回答 1
1回答

qq_遁去的一_1

我不认为,你可以用 gorm 本机做到这一点。这有点 hacky,但您可以在 AutoMigrate 之后执行原始 SQL 查询来设置增量值:SELECT GREATEST(100, MAX(id) + 1) FROM table_name INTO @autoinc;ALTER TABLE table_name AUTO_INCREMENT = @autoinc;通过这种方式,您可以确保该值最小为 100(如果表中没有行),或者如果已经有行,则它是下一个值。
随时随地看视频慕课网APP

相关分类

Go
我要回答