首页  >  文章  >  后端开发  >  如何使用 Go 在 MongoDB 中通过 _id 查找文档?

如何使用 Go 在 MongoDB 中通过 _id 查找文档?

DDD
DDD原创
2024-10-30 15:28:03740浏览

How to Find a Document by _id in MongoDB using Go?

使用 Go 在 MongoDB 中通过 _id 查找文档

使用 mongo-go- 通过自动生成的 _id 字段查找文档驱动程序,实例化一个 ObjectID 并将其用作查询过滤器中“_id”字段的值。

在提供的代码中,使用了 bson.RawValue,但这不是必需的。相反,使用primitive.ObjectIDFromHex("")直接转换_id的十六进制表示。

更新的代码:

<code class="go">import (
    "context"
    "go.mongodb.org/mongo-driver/bson"
    "go.mongodb.org/mongo-driver/mongo"
    "go.mongodb.org/mongo-driver/mongo/options"
    "go.mongodb.org/mongo-driver/mongo/primitive"
)

func main() {
    ctx := context.Background()

    // Create a client
    client, err := mongo.Connect(ctx, options.Client().ApplyURI("mongodb://<host>:<port>"))
    if err != nil {
        // handle error
    }
    defer client.Disconnect(ctx)

    // Get a collection
    collection := client.Database("database").Collection("collection")

    // Parse the ObjectID from hexadecimal string
    id, err := primitive.ObjectIDFromHex("5c7452c7aeb4c97e0cdb75bf")
    if err != nil {
        // handle error
    }

    // Find the document by _id
    result := collection.FindOne(ctx, bson.M{"_id": id})
}</code>

以上是如何使用 Go 在 MongoDB 中通过 _id 查找文档?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn