登录
首页 >  Golang >  Go问答

使用 golang 控制创建/删除 mongoDB 数据库和集合

来源:stackoverflow

时间:2024-02-08 22:39:24 251浏览 收藏

今日不肯埋头,明日何以抬头!每日一句努力自己的话哈哈~哈喽,今天我将给大家带来一篇《使用 golang 控制创建/删除 mongoDB 数据库和集合》,主要内容是讲解等等,感兴趣的朋友可以收藏或者有更好的建议在评论提出,我都会认真看的!大家一起进步,一起学习!

问题内容

func databaseconnect() (db *mongo.database, err error) {
    ctx, cancel := context.withtimeout(context.background(), 20*time.second)
    defer cancel()
    client, err := mongo.connect(ctx, options.client().applyuri("mongodb://localhost:27017"))
    if err != nil {
        return
    }
    db = client.database("students")
    return
}

上面的函数连接到 mongodb 服务器上已经存在的数据库。但是我们可以为此编写一个类似的函数,它将创建/删除数据库和一些集合。

func HandleDatabases(){
// for deleting / creating / managing mongoDB databases and collections ?
}

正确答案


使用 MongoDB,数据库和集合在使用之前不需要存在。

您可以对不存在的数据库和集合运行查询,这不会导致错误,但显然不会返回任何文档。当将文档插入不存在的数据库和/或集合时,将自动创建数据库和/或集合。

要删除数据库,只需使用 Database.Drop() 方法即可。要删除集合,只需使用 Collection.Drop() 方法即可。

如果您希望使用非默认的特殊属性创建集合,则只需在使用它之前创建一个集合。为此,您可以使用 Database.CreateCollection()

要找出服务器上已有哪些数据库,您可以使用 Client.ListDatabases()Client.ListDatabaseNames() 方法。

要找出数据库中已存在哪些集合,您可以使用 Database.ListCollections()Database.ListCollectionNames() 方法。

今天关于《使用 golang 控制创建/删除 mongoDB 数据库和集合》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>