我想问你是否有办法在使用collection插入新对象时找出插入是否成功。
使用单个操作插入(对象)。
我的意思是,我不想向数据库发送另一个查询以查明是否有记录。我需要一个原子操作(insert -> result (isSuccessful)
- 伪代码)。
该Insert
方法返回一个错误对象,表示它是成功还是失败。您需要先设置会话的安全模式才能启用此行为。
session.SetSafe(&mgo.Safe{}) // <-- first set safe mode!
c := session.DB("test").C("people")
err = c.Insert(&Person{"Ale", "+55 53 8116 9639"})
if err != nil { // <-- then check error after insert!
fmt.Printf("There was an error: %v", err)
} else {
fmt.Print("Success!")
}