在 GORM 2.0 中查询上次插入 ID
与之前版本的 GORM 不同,GORM 2.0 不再提供 LastInsertId() 方法来检索最后插入的 ID。相反,它将 ID 字段直接填充到传递给 Create() 函数的模型中。
例如,考虑以下代码:
type User struct {
gorm.Model
Name string
}
user1 := User{Name: "User One"}
_ = db.Transaction(func(tx *gorm.DB) error {
tx.Create(&user1)
return nil
})
执行此代码后,user1 的 ID 字段将填充最后插入的 ID。无需调用 db.Last() 来检索它。
这种修改后的方法简化了获取最后一个插入 ID 的过程,同时还消除了额外数据库查询的潜在性能开销。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3