Menu Docs
Página inicial do Docs
/
Guias

Ler dados no MongoDB

Neste guia, você aprenderá como recuperar dados do MongoDB.

Tempo necessário: 10 minutos

  • Umastring de conexão para sua implantação do MongoDB .

  • Exemplos de conjuntos de dados carregados em seu cluster.

  • Um mongoDB Driver instalado.

1

Dica

Veja a seguir um esboço com o código mínimo necessário para se conectar ao MongoDB. Você fará adições nas próximas etapas para ler os dados.

Na linha 5, substitua a string URI por sua própria connection string Atlas.

CrudRead.cs
1using MongoDB.Bson;
2using MongoDB.Driver;
3
4// Replace the uri string with your MongoDB deployment's connection string.
5var uri = "mongodb+srv://<user>:<password>@<cluster-url>?retryWrites=true&writeConcern=majority";
6
7var client = new MongoClient(uri);
8
9// database and collection code goes here
10// find code goes here
11// iterate code goes here
12
13
14

Dica

Veja a seguir um esboço com o código mínimo necessário para se conectar ao MongoDB. Você fará adições nas próximas etapas para ler os dados.

Na linha 11, substitua a string URI por sua própria string de conexão Atlas .

crudRead.go
1package main
2
3import (
4 "context"
5
6 "go.mongodb.org/mongo-driver/v2/mongo"
7 "go.mongodb.org/mongo-driver/v2/mongo/options"
8)
9
10func main() {
11 uri := "mongodb+srv://<user>:<password>@<cluster-url>?retryWrites=true&writeConcern=majority"
12
13 client, err := mongo.Connect(options.Client().ApplyURI(uri))
14 if err != nil {
15 panic(err)
16 }
17
18 defer func() {
19 if err = client.Disconnect(context.TODO()); err != nil {
20 panic(err)
21 }
22 }()
23
24 // database and colletion code goes here
25 // find code goes here
26 // iterate code goes here
27}

Dica

Veja a seguir um esboço com o código mínimo necessário para se conectar ao MongoDB. Você fará adições nas próximas etapas para ler os dados.

Na linha 8, substitua a string URI por sua própria string de conexão Atlas .

CrudRead.java
1import com.mongodb.client.*;
2import com.mongodb.client.model.Filters.*;
3import org.bson.Document;
4import org.bson.conversions.Bson;
5
6public class CrudRead {
7 public static void main(String[] args) {
8 String uri = "mongodb+srv://<user>:<password>@<cluster-url>?retryWrites=true&writeConcern=majority";
9
10 try (MongoClient mongoClient = MongoClients.create(uri)) {
11 // database and collection code goes here
12 // find code goes here
13 // iterate code goes here
14 }
15 }
16}

Dica

Veja a seguir um esboço com o código mínimo necessário para se conectar ao MongoDB. Você fará adições nas próximas etapas para ler os dados.

Na linha 4, substitua a string URI pela sua própria connection string do Atlas.

crud-read.js
1const { MongoClient } = require("mongodb");
2// Replace the uri string with your MongoDB deployment's connection string.
3const uri =
4 "mongodb+srv://<user>:<password>@<cluster-url>?retryWrites=true&writeConcern=majority";
5const client = new MongoClient(uri);
6async function run() {
7 try {
8 await client.connect();
9 // database and collection code goes here
10 // find code goes here
11 // iterate code goes here
12 } finally {
13 // Ensures that the client will close when you finish/error
14 await client.close();
15 }
16}
17run().catch(console.dir);

Dica

Veja a seguir um esboço com o código mínimo necessário para se conectar ao MongoDB. Você fará adições nas próximas etapas para ler os dados.

Na linha 4, substitua a string URI pela sua própria connection string do Atlas.

crud_read.py
1from pymongo import MongoClient
2
3# Replace the uri string with your MongoDB deployment's connection string.
4uri = "mongodb+srv://<user>:<password>@<cluster-url>?retryWrites=true&writeConcern=majority"
5
6client = MongoClient(uri)
7
8# database and collection code goes here
9# find code goes here
10# iterate code goes here
11
12# Close the connection to MongoDB when you're done.
13client.close()

Dica

MongoDB+srv

Certifique-se de ter instalado o PyMongo com a opção srv .

python3 -m pip install "pymongo[srv]"

Neste bloco de código, há um comentário para substituir a URI da conexão pela sua. Substitua a string de URI pela sua connection string do Atlas.

2

Mude para o banco de dados e a coleta que você deseja consultar. Nesse caso, você usará o banco de dados sample_guides e a coleta planets.

CrudRead.cs
// database and collection code goes here
var db = client.GetDatabase("sample_guides");
var coll = db.GetCollection<BsonDocument>("planets");
crudRead.go
1// database and colletion code goes here
2db := client.Database("sample_guides")
3coll := db.Collection("planets")
CrudRead.java
1// database and collection code goes here
2MongoDatabase db = mongoClient.getDatabase("sample_guides");
3MongoCollection<Document> coll = db.getCollection("planets");
crud-read.js
// database and collection code goes here
const db = client.db("sample_guides");
const coll = db.collection("planets");
crud_read.py
# database and collection code goes here
db = client.sample_guides
coll = db.planets
3
CrudRead.cs
// find code goes here
var cursor = coll.AsQueryable();

Use o método Find() para recuperar todos os documentos. Em outro guia, você aprenderá como usar o mesmo método para recuperar documentos que correspondam a critérios específicos.

Dica

O bson.D{} vazio é necessário para corresponder a todos os documentos.

crudRead.go
1// find code goes here
2cursor, err := coll.Find(context.TODO(), bson.D{})
3if err != nil {
4 panic(err)
5}

Use o método find() para recuperar todos os documentos. Em outro guia, você aprenderá como usar o mesmo método para recuperar documentos que correspondam a critérios específicos.

CrudRead.java
1// find code goes here
2MongoCursor<Document> cursor = coll.find().iterator();

Use o método find() para recuperar todos os documentos. Em outro guia, você aprenderá como usar o mesmo método para recuperar documentos que correspondam a critérios específicos.

crud-read.js
// find code goes here
const cursor = coll.find();

Use o método find() para recuperar todos os documentos. Em outro guia, você aprenderá como usar o mesmo método para recuperar documentos que correspondam a critérios específicos.

crud_read.py
# find code goes here
cursor = coll.find()
4
CrudRead.cs
// iterate code goes here
foreach (var document in cursor.ToEnumerable())
{
Console.WriteLine(document);
}
crudRead.go
1// iterate code goes here
2for cursor.Next(context.TODO()) {
3 var result bson.M
4 if err := cursor.Decode(&result); err != nil {
5 panic(err)
6 }
7 fmt.Println(result)
8}
9if err := cursor.Err(); err != nil {
10 panic(err)
11}
CrudRead.java
1// iterate code goes here
2try {
3 while (cursor.hasNext()) {
4 System.out.println(cursor.next().toJson());
5 }
6} finally {
7 cursor.close();
8}

Itere os resultados e imprima-os no console. Operações como essa são asychronous no driver Node.js do MongoDB por padrão, o que significa que o tempo de execução do Node.js não bloqueia outras operações enquanto espera que elas terminem a execução.

Para simplificar a operação, você especifica a palavra-chave await, que fará com que o tempo de execução aguarde a operação. Isso geralmente é mais fácil do que especificar uma chamada de resposta, ou encadear uma promessa.

Para mais informações, consulte o guia Promise and Callbacks.

crud-read.js
// iterate code goes here
await cursor.forEach(console.log);
crud_read.py
# iterate code goes here
for doc in cursor:
print(doc)
5

Aqui está o código completo seguido de saída de amostra.

Observação

Seus valores ObjectId serão diferentes daqueles mostrados.

Aqui está o código completo seguido de saída de amostra.

CrudRead.cs
1using MongoDB.Bson;
2using MongoDB.Driver;
3
4// Replace the uri string with your MongoDB deployment's connection string.
5var uri = "mongodb+srv://<user>:<password>@<cluster-url>?retryWrites=true&writeConcern=majority";
6
7var client = new MongoClient(uri);
8
9// database and collection code goes here
10var db = client.GetDatabase("sample_guides");
11var coll = db.GetCollection<BsonDocument>("planets");
12// find code goes here
13var cursor = coll.AsQueryable();
14// iterate code goes here
15foreach (var document in cursor)
16{
17 Console.WriteLine(document);
18}
19
20
{
'_id': ObjectId('621ff30d2a3e781873fcb65c'),
'name': 'Mercury',
'orderFromSun': 1,
'hasRings': False,
'mainAtmosphere': [],
'surfaceTemperatureC': {'min': -173, 'max': 427, 'mean': 67}
},
...

Aqui está o código completo seguido de saída de amostra.

crudRead.go
1package main
2
3import (
4 "context"
5 "fmt"
6
7 "go.mongodb.org/mongo-driver/v2/bson"
8 "go.mongodb.org/mongo-driver/v2/mongo"
9 "go.mongodb.org/mongo-driver/v2/mongo/options"
10)
11
12func main() {
13 uri := "mongodb+srv://<user>:<password>@<cluster-url>?retryWrites=true&writeConcern=majority"
14
15 client, err := mongo.Connect(options.Client().ApplyURI(uri))
16 if err != nil {
17 panic(err)
18 }
19
20 defer func() {
21 if err = client.Disconnect(context.TODO()); err != nil {
22 panic(err)
23 }
24 }()
25
26 // database and colletion code goes here
27 db := client.Database("sample_guides")
28 coll := db.Collection("planets")
29
30 // find code goes here
31 cursor, err := coll.Find(context.TODO(), bson.D{})
32 if err != nil {
33 panic(err)
34 }
35
36 // iterate code goes here
37 for cursor.Next(context.TODO()) {
38 var result bson.M
39 if err := cursor.Decode(&result); err != nil {
40 panic(err)
41 }
42 fmt.Println(result)
43 }
44 if err := cursor.Err(); err != nil {
45 panic(err)
46 }
47
48}
map[_id:ObjectID("621ff30d2a3e781873fcb65c") hasRings:false mainAtmosphere:[] name:Mercury orderFromSun:1 surfaceTemperatureC:map[max:427 mean:67 min:-173]]
...

Aqui está o código completo seguido de saída de amostra.

CrudRead.java
1import com.mongodb.client.*;
2import com.mongodb.client.model.Filters.*;
3import org.bson.Document;
4import org.bson.conversions.Bson;
5
6public class CrudRead {
7 public static void main(String[] args) {
8 String uri = "mongodb+srv://<user>:<password>@<cluster-url>?retryWrites=true&writeConcern=majority";
9
10 try (MongoClient mongoClient = MongoClients.create(uri)) {
11 // database and collection code goes here
12 MongoDatabase db = mongoClient.getDatabase("sample_guides");
13 MongoCollection<Document> coll = db.getCollection("planets");
14
15 // find code goes here
16 MongoCursor<Document> cursor = coll.find().iterator();
17
18 // iterate code goes here
19 try {
20 while (cursor.hasNext()) {
21 System.out.println(cursor.next().toJson());
22 }
23 } finally {
24 cursor.close();
25 }
26 }
27 }
28}
{"_id": {"$oid": "621ff30d2a3e781873fcb65c"}, "name": "Mercury", "orderFromSun": 1, "hasRings": false, "mainAtmosphere": [], "surfaceTemperatureC": {"min": -173, "max": 427, "mean": 67}}
...

Aqui está o código completo seguido de saída de amostra.

crud-read.js
1const { MongoClient } = require("mongodb");
2// Replace the uri string with your MongoDB deployment's connection string.
3const uri =
4 "mongodb+srv://<user>:<password>@<cluster-url>?retryWrites=true&writeConcern=majority";
5const client = new MongoClient(uri);
6async function run() {
7 try {
8 await client.connect();
9 // database and collection code goes here
10 const db = client.db("sample_guides");
11 const coll = db.collection("planets");
12
13 // find code goes here
14 const cursor = coll.find();
15
16 // iterate code goes here
17 await cursor.forEach(console.log);
18 } finally {
19 // Ensures that the client will close when you finish/error
20 await client.close();
21 }
22}
23run().catch(console.dir);
{
'_id': ObjectId('621ff30d2a3e781873fcb65c'),
'name': 'Mercury',
'orderFromSun': 1,
'hasRings': False,
'mainAtmosphere': [],
'surfaceTemperatureC': {'min': -173, 'max': 427, 'mean': 67}
},
...

Aqui está o código completo seguido de saída de amostra.

crud_read.py
1from pymongo import MongoClient
2
3# Replace the uri string with your MongoDB deployment's connection string.
4uri = "mongodb+srv://<user>:<password>@<cluster-url>?retryWrites=true&writeConcern=majority"
5
6client = MongoClient(uri)
7
8# database and collection code goes here
9db = client.sample_guides
10coll = db.planets
11# find code goes here
12cursor = coll.find({"hasRings": True})
13# iterate code goes here
14for doc in cursor:
15 print(doc)
16
17# Close the connection to MongoDB when you're done.
18client.close()
{
'_id': ObjectId('621ff30d2a3e781873fcb65c'),
'name': 'Mercury',
'orderFromSun': 1,
'hasRings': False,
'mainAtmosphere': [],
'surfaceTemperatureC': {'min': -173, 'max': 427, 'mean': 67}
},
...

Se você concluiu com sucesso o procedimento neste guia, recuperou dados do MongoDB.

No próximo guia, você aprenderá como recuperar dados do MongoDB usando critérios.

Para outros guias CRUD:

Qual é o próximo
Ler dados do MongoDB com queries
15 minutos

Use uma query para especificar quais documentos recuperar no MongoDB.

Guia de início
Capítulo 2
CRUD
  • Adicionar um Driver MongoDB
  • Ler dados no MongoDB
  • Ler dados do MongoDB com queries
  • Ler dados usando operadores e queries compostas
  • Inserir dados no MongoDB
  • Atualizar dados no MongoDB
  • Excluir dados do MongoDB