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 ?}
1 回答
慕姐8265434
TA贡献1813条经验 获得超2个赞
使用 MongoDB,数据库和集合在使用之前不需要存在。
您可以对不存在的数据库和集合运行查询,这不会导致错误,但显然不会返回任何文档。将文档插入不存在的数据库和/或集合时,将自动创建数据库和/或集合。
要删除数据库,只需使用该Database.Drop()
方法。要删除一个集合,只需使用该Collection.Drop()
方法。
如果您希望它使用非默认的特殊属性创建,您只需要在使用它之前创建一个集合。为此,您可以使用Database.CreateCollection()
.
要找出服务器上已经存在哪些数据库,您可以使用Client.ListDatabases()
orClient.ListDatabaseNames()
方法。
要找出数据库中已经存在哪些集合,您可以使用Database.ListCollections()
orDatabase.ListCollectionNames()
方法。
- 1 回答
- 0 关注
- 113 浏览
添加回答
举报
0/150
提交
取消