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

db.FirstOrCreate 和 db.Where().FirstOrCreate()

db.FirstOrCreate 和 db.Where().FirstOrCreate()

Go
qq_遁去的一_1 2022-05-23 15:57:38
// Unfounddb.FirstOrCreate(&user, User{Name: "non_existing"})//// INSERT INTO "users" (name) VALUES ("non_existing");//// user -> User{Id: 112, Name: "non_existing"}// Founddb.Where(User{Name: "Jinzhu"}).FirstOrCreate(&user)//// user -> User{Id: 111, Name: "Jinzhu"}嗨,我阅读了 的文档gorm,但我无法发现它们之间的区别。有人可以解释
查看完整描述

1 回答

?
精慕HU

TA贡献1845条经验 获得超8个赞

Gorm 文档并不全面而且有点神秘。据我了解,使用显式 where 和使用 where inside 之间没有区别FirstOrCreate。这个例子的目的是表明你可以使用任何一种方式。

如果对象不存在("non_existing" 案例),那么它将执行 INSERT,否则不会。


查看完整回答
反对 回复 2022-05-23
  • 1 回答
  • 0 关注
  • 133 浏览
慕课专栏
更多

添加回答

举报

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