如何使用Go从MongoDB中删除单个文档

6

我是golang和MongoDb的新手。 如何从MongoDB集合中删除一个由"name"标识的单个文档? 谢谢提前。


2
你有没有阅读文档 https://godoc.org/gopkg.in/mgo.v2#Collection.Remove ? - Alex Blex
@Alex Blex 谢谢你,伙计。 - Arjun Ajith
2个回答

8
以下示例演示了如何使用API中的Remove()方法,从localhost上的test数据库中的people集合中删除名称为Foo Bar的单个文档。
// Get session
session, err := mgo.Dial("localhost")
if err != nil {
    fmt.Printf("dial fail %v\n", err)
    os.Exit(1)
}
defer session.Close()

// Error check on every access
session.SetSafe(&mgo.Safe{})

// Get collection
collection := session.DB("test").C("people")

// Delete record
err = collection.Remove(bson.M{"name": "Foo Bar"})
if err != nil {
    fmt.Printf("remove fail %v\n", err)
    os.Exit(1)
}

7

MongoDB 官方支持 golang。以下是从 MongoDB 中删除项目的演示:

// Assuming you've setup your mongoDB client
collection := client.Database("database_name").Collection("collection_hero")

deleteResult, _ := collection.DeleteOne(context.TODO(), bson.M{"_id": 
primitive.ObjectIDFromHex("_id")})
if deleteResult.DeletedCount == 0 {
    log.Fatal("Error on deleting one Hero", err)
}
return deleteResult.DeletedCount

如果想要了解更多信息,请访问:https://www.mongodb.com/blog/post/mongodb-go-driver-tutorial


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接