golang如何使用mongodb查询全部集合的信息
时间: 2023-02-13 16:18:58 浏览: 182
golang操作mongodb的方法
在 Golang 中使用 MongoDB 进行查询操作,需要先安装 MongoDB 驱动,然后连接到数据库。这里以 mongo-go-driver 为例,给出一个查询全部集合信息的示例:
```
package main
import (
"context"
"fmt"
"log"
"go.mongodb.org/mongo-driver/mongo"
"go.mongodb.org/mongo-driver/mongo/options"
)
func main() {
client, err := mongo.NewClient(options.Client().ApplyURI("mongodb://localhost:27017"))
if err != nil {
log.Fatal(err)
}
err = client.Connect(context.TODO())
if err != nil {
log.Fatal(err)
}
defer client.Disconnect(context.TODO())
// 获取数据库中的所有集合
collections, err := client.Database("test").ListCollections(context.TODO(), bson.M{})
if err != nil {
log.Fatal(err)
}
// 遍历输出集合信息
for collections.Next(context.TODO()) {
var collection bson.M
if err := collections.Decode(&collection); err != nil {
log.Fatal(err)
}
fmt.Println(collection)
}
if err := collections.Err(); err != nil {
log.Fatal(err)
}
}
```
上面的代码首先连接到本地的 MongoDB 服务器,然后使用 ListCollections 方法获取 test 数据库中的所有集合,最后使用 for 循环遍历输出集合信息。
注意:
- 连接 MongoDB 需要先安装 mongo-go-driver。
- 连接字符串格式为 "mongodb://[username:password@]host1[:port1][,...hostN[:portN]][/[database][?options]]"。
参考文档:
- MongoDB Go 驱动文档:https://pkg.go.dev/go.mongodb.org/mongo-driver?tab=doc
- MongoDB Go 驱
阅读全文