mysql插入数据后,如何高效的获取刚刚插入的主键id

cappuccino5 · · 4348 次点击
gorm 的create 返回结果的value里有刚插入的数据结果,可以拿到插入的ID, 本人使用示例如下 func InsertCategory(category Category) (uint, error) { result := models.Db.Debug().Create(&category) if err := result.Error; err != nil { return 0, err } if carels, ok := result.Value.(*Category); ok { return carels.Id, nil } else { return 0, errors.New("category表插入数据异常") } return 0, nil }
#5
更多评论
gorm 是会返回id的,create(&model)如果model里面有id的话。可以自己调试下。执行create之前id=0,执行之后就不是了。
#1
sql包里面的Result接口有个LastInsertId(),可以返回id
#2