English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Neste tutorial Node.js, usaremos os métodos insertOne() e insertMany(), através de exemplos, para aprender a inserir um ou mais documentos no MongoDB Collection a partir de um aplicativo Node.js.
A seguir está uma guia passo a passo, fornecendo um exemplo que insere um documento no MongoDB Collection a partir de um aplicativo Node.js.
Start the MongoDB service. Run the following command to start the MongoDB service
sudo service mongod start
Obtenha a URL básica do serviço MongoDB. Uma dica simples para entender a URL básica do serviço MongoDB é abrir o terminal e executar o Mongo Shell.
Terminal - Mongo Shell
arjun@nodejs:~$ mongo MongoDB shell version v3.4.9 connecting to: mongodb://127.0.0.1:27017 MongoDB server version: 3.4.9 Server has startup warnings: 2017-10-29T18:15:36.110+0530 I STORAGE [initandlisten]
Quando o Mongo Shell é iniciado, ele exibe a URL básica do MongoDB.
mongodb://127.0.0.1:27017
Prepare a URL completa. Adicione o nome do banco de dados que você deseja conectar (por exemplo, newdb) ao URL básico.
mongodb://127.0.0.1:27017/newdb
Crie um MongoClient.
var MongoClient = require('mongodb').MongoClient;
Conecte-se ao servidor MongoDB usando a ajuda da URL.
MongoClient.connect(url, <callback_function>);
Assim que a tentativa do MongoClient de estabelecer uma conexão for concluída, a função de callback receberá o erro e o objeto db como parâmetros.
Se a conexão for bem-sucedida, o objeto db aponta para o banco de dados newdb.
Insira o documento na coleção MongoDB especificada. A seguir está a sintaxe dos métodos insertOne() e insertMany() usados para inserir documentos no MongoDB a partir do Node.js.
insertOne()
db.collection(<collection_name>).insertOne(<document>, <callback_function>)
insertMany()
db.collection(<collection_name>).insertMany(<documents_array>, <callback_function>)
Descrição dos parâmetros:
<collection_name> - O nome do conjunto MongoDB novo que vamos criar
<document> - Documento único a ser inserido na Coleção MongoDB
<document_array> - Array de documentos a serem inseridos na Coleção MongoDB
<callback_function> - Após o Node tentar criar o conjunto e preparar o resultado, será chamada esta função de callback do Node.js. A função de callback recebe o erro e o objeto de resultado como parâmetros.
// Criamos o conjunto "usuário" no banco de dados newdb var url = "mongodb://localhost:27017/newdb"; // Cria um cliente para mongodb var MongoClient = require('mongodb').MongoClient; // Faz a conexão do cliente com o serviço mongo MongoClient.connect(url, function(err, db) { if (err) throw err; // db aponta para newdb console.log("Alternou para "+db.databaseName+" database}); // Arquivo a Inserir var doc = { name: "Roshan", age: "22" }; // Usa insertOne para inserir documento no conjunto "usuário" db.collection("users").insertOne(doc, function(err, res) { if (err) throw err; console.log("Documento inserido"); // Fechar a conexão com o db após a conclusão db.close(); }); });
Resultados de Saída
$ node node-js-mongodb-insert-document.js Switched to newdb database Documento inserido
Mongo Shell
> use newdb Alternou para db newdb > show collections users > db.users.find({}); {"_id": "5a127729a415612642e3d6ad"), "name": "Roshan", "age": "22" } >
// Criamos o conjunto "usuário" no banco de dados newdb var url = "mongodb://localhost:27017/newdb"; // Cria um cliente para mongodb var MongoClient = require('mongodb').MongoClient; // Faz a conexão do cliente com o serviço mongo MongoClient.connect(url, function(err, db) { if (err) throw err; // db aponta para newdb console.log("Alternou para "+db.databaseName+" database}); // Arquivo a Inserir var docs = [{ "name": "Udat", "age": "21" }, {"name": "Karthik", "age": "24" }, {"name": "Anil", "age": "23" ]; // Inserir múltiplos documentos na coleção "users" usando insertOne db.collection("users").insertMany(docs, function(err, res) { if (err) throw err; console.log(res.insertedCount+" documents inserted"); // Fechar a conexão com o db após a conclusão db.close(); }); });
Resultados de Saída
$ node node-js-mongodb-insert-many-documents.js Switched to newdb database 3 documents inserted
Mongo Shell
> db.users.find({}); {"_id": "5a127729a415612642e3d6ad"), "name": "Roshan", "age": "22" } {"_id": "5a1278efecc5062794f4ed8d"), "name": "Udat", "age": "21" } {"_id": "5a1278efecc5062794f4ed8e"), "name": "Karthik", "age": "24" } {"_id": "5a1278efecc5062794f4ed8f"), "name": "Anil", "age": "23" } >
O primeiro item vem do primeiro exemplo, os outros três foram inseridos juntos com esse exemplo.
Neste tutorial do Node.js MongoDB: Node.js – Inserir Document(s) na Collection do MongoDBAprendemos a usar o pacote mongodb para inserir um ou mais documentos na Collection do MongoDB a partir do aplicativo Node.js. No nosso próximo tutorial - Node.js MongoDB Find, vamos aprender a consultar documentos na Collection do MongoDB.