为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

Go
明月笑刀无情 2023-02-21 16:12:13
我在我的项目中使用了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?
查看完整描述

1 回答

?
qq_遁去的一_1

TA贡献1725条经验 获得超7个赞

我不认为,你可以用 gorm 本机做到这一点。这有点 hacky,但您可以在 AutoMigrate 之后执行原始 SQL 查询来设置增量值:


SELECT GREATEST(100, MAX(id) + 1) FROM table_name INTO @autoinc;

ALTER TABLE table_name AUTO_INCREMENT = @autoinc;

通过这种方式,您可以确保该值最小为 100(如果表中没有行),或者如果已经有行,则它是下一个值。


查看完整回答
反对 回复 2023-02-21
  • 1 回答
  • 0 关注
  • 445 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信