gpt4 book ai didi

mongodb - 使用 GoLang 在 mongodb 中进行事务的示例

转载 作者:IT王子 更新时间:2023-10-29 01:22:55 31 4
gpt4 key购买 nike

我需要一个示例来使用 GoLang 在 MongoDB 中实现事务。

我正在为 mongodb 使用这个 golang 驱动程序

https://github.com/mongodb/mongo-go-driver

没有关于如何实现交易的明确文档。

谁能帮帮我?

最佳答案

这可能会令人困惑。下面是一个简单的例子。

if session, err = client.StartSession(); err != nil {
t.Fatal(err)
}
if err = session.StartTransaction(); err != nil {
t.Fatal(err)
}
if err = mongo.WithSession(ctx, session, func(sc mongo.SessionContext) error {
if result, err = collection.UpdateOne(sc, bson.M{"_id": id}, update); err != nil {
t.Fatal(err)
}
if result.MatchedCount != 1 || result.ModifiedCount != 1 {
t.Fatal("replace failed, expected 1 but got", result.MatchedCount)
}

if err = session.CommitTransaction(sc); err != nil {
t.Fatal(err)
}
return nil
}); err != nil {
t.Fatal(err)
}
session.EndSession(ctx)

您可以查看完整 examples here .

关于mongodb - 使用 GoLang 在 mongodb 中进行事务的示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54398579/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com