English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In questo tutorial Node.js, utilizzeremo i metodi insertOne() e insertMany() per inserire un documento o più documenti in una Collection di MongoDB da un'applicazione Node.js
Ecco una guida passo-passo con un esempio che mostra come inserire documenti in una Collection di MongoDB da un'applicazione Node.js
Avvia il servizio MongoDB. Esegui i seguenti comandi per avviare il servizio MongoDB
sudo service mongod start
Ottenere l'URL di base del servizio MongoDB. Un trucco semplice per sapere l'URL di base del servizio MongoDB è aprire il terminale e eseguire il Mongo Shell.
Terminale - Mongo Shell
arjun@nodejs:~$ mongo Versione del shell MongoDB v3.4.9 connessione a: mongodb://127.0.0.1:27017 Versione del server MongoDB: 3.4.9 Avvisi di avvio del server: 2017-10-29T18:15:36.110+0530 I STORAGE [initandlisten]
Quando il Mongo Shell viene avviato, visualizza l'URL di base di MongoDB.
mongodb://127.0.0.1:27017
Preparare l'URL completo. Aggiungere il nome del database da connettere (ad esempio newdb) all'URL di base.
mongodb://127.0.0.1:27017/newdb
Creare un oggetto MongoClient.
var MongoClient = require('mongodb').MongoClient;
Con l'aiuto dell'URL, connettersi al server MongoDB utilizzando MongoClient.
MongoClient.connect(url, <callback_function>);
Una volta completato il tentativo di connessione di MongoClient, la funzione di callback riceve come parametri l'errore e l'oggetto db.
Se la connessione è riuscita, l'oggetto db punta al database newdb.
Inserire il documento nella collection MongoDB specificata. Di seguito è riportata la sintassi dei metodi insertOne() e insertMany() per inserire documenti in una collection da Node.js.
insertOne()
db.collection(<collection_name>).insertOne(<document>, <callback_function>)
insertMany()
db.collection(<collection_name>).insertMany(<documents_array>, <callback_function>)
Descrizione dei parametri:
<collection_name> - Il nome della nuova collection MongoDB che dobbiamo creare
<document> - Deve essere inserito nel singolo documento della collection MongoDB
<document_array> - Array di documenti da inserire nella collezione MongoDB
<callback_function> - Dopo che Node ha tentato di creare la collezione e preparato i risultati, verrà chiamata questa funzione di callback Node.js. La funzione di callback riceve come parametri un errore e un oggetto risultato.
// Creiamo la collezione "utenti" nel database newdb var url = "mongodb://localhost:27017/newdb"; // Creare un client per mongodb var MongoClient = require('mongodb').MongoClient; // L'utente si connette al servizio mongo MongoClient.connect(url, function(err, db) { if (err) throw err; // db punta a newdb console.log("Switched to "+db.databaseName+" database"); // Documenti da inserire var doc = { name: "Roshan", age: "22" }; // Utilizzare insertOne per inserire un documento nella collezione "utenti" db.collection("users").insertOne(doc, function(err, res) { if (err) throw err; console.log("Document inserted"); // Chiudi la connessione con db completato db.close(); }); });
Risultato dell'output
$ node node-js-mongodb-insert-document.js Passato alla database newdb Document inserted
Mongo Shell
> use newdb switched to db newdb > show collections users > db.users.find({}); {"_id": "5a127729a415612642e3d6ad", "name": "Roshan", "age": "22"} >
// Creiamo la collezione "utenti" nel database newdb var url = "mongodb://localhost:27017/newdb"; // Creare un client per mongodb var MongoClient = require('mongodb').MongoClient; // L'utente si connette al servizio mongo MongoClient.connect(url, function(err, db) { if (err) throw err; // db punta a newdb console.log("Switched to "+db.databaseName+" database"); // Documenti da inserire var docs = [{ name: "Udat", age: "21" }, { name: "Karthik", age: "24" }, { name: "Anil", age: "23" }]; // Utilizzare insertOne per inserire più documenti nella collezione "utenti" db.collection("users").insertMany(docs, function(err, res) {}} if (err) throw err; console.log(res.insertedCount+" documenti inseriti"); // Chiudi la connessione con db completato db.close(); }); });
Risultato dell'output
$ node node-js-mongodb-insert-many-documents.js Passato alla database newdb 3 documenti inseriti
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"} >
Il primo elemento proviene dal primo esempio, gli altri tre sono stati inseriti insieme a questo esempio.
In questo tutorial Node.js MongoDB: Node.js - Inserimento Documento(i) nella Collection MongoDBAbbiamo imparato a utilizzare il pacchetto mongodb per inserire un documento o più documenti nella collection MongoDB utilizzando i metodi insertOne() e insertMany() dall'applicazione Node.js. Nel nostro prossimo tutorial - Node.js MongoDB Find, impareremo a queryizzare documenti nella collection MongoDB.