English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutoriel de base NodeJS

Express.js NodeJS

Bouclage & URL; NodeJS

NodeJS MySql

NodeJS MongoDB

Fichier (FS) NodeJS

Autres NodeJS

Insertion de document MongoDB avec Node.js

Node.js -Insérer un document dans la collection MongoDB

Dans ce tutoriel Node.js, nous utiliserons respectivement les méthodes insertOne() et insertMany(), à travers des exemples, pour apprendre à insérer un ou plusieurs documents dans une collection MongoDB à partir d'une application Node.js.

Voici une guide étape par étape, avec un exemple qui insère un document dans une collection MongoDB à partir d'une application Node.js.

Démarrer le service MongoDB. Exécutez la commande suivante pour démarrer le service MongoDB

sudo service mongod start

Obtenir l'URL de base du service MongoDB. Pour comprendre l'URL de base du service MongoDB, une astuce simple consiste à ouvrir le terminal et à exécuter le shell MongoDB.

Terminal - Mongo Shell

arjun@nodejs:~$ mongo
Version du shell MongoDB v3.4.9
connecting to: mongodb://127.0.0.1:27017
Version du serveur MongoDB: 3.4.9
Server has startup warnings: 
2017-10-29T18:15:36.110+0530 I STOCKAGE [initandlisten]

Lorsque le Mongo Shell démarre, il affiche l'URL de base de MongoDB.

mongodb://127.0.0.1:27017

Préparer l'URL complet. Ajoutez le nom de la base de données que vous souhaitez connecter (par exemple newdb) à l'URL de base.

mongodb://127.0.0.1:27017/newdb

Créer un MongoClient.

var MongoClient = require('mongodb').MongoClient;

Se connecter au serveur MongoDB à l'aide de l'URL.

MongoClient.connect(url, <callback_function>);

Une fois que MongoClient a tenté d'établir une connexion, la fonction de rappel reçoit l'erreur et l'objet db en tant que paramètres.

Si la connexion est réussie, l'objet db pointe vers la base de données newdb.

Insérer le document dans la collection MongoDB spécifiée. Voici la syntaxe des méthodes insertOne() et insertMany() utilisées pour insérer un document dans une collection MongoDB à partir de Node.js.

insertOne()

db.collection(<collection_name>).insertOne(<document>, <callback_function>)

insertMany()

db.collection(<collection_name>).insertMany(<documents_array>, <callback_function>)

 参数说明:

  • <collection_name>  -  我们要创建的新MongoDB集合的名称

  • <document> -   必须插入到MongoDB Collection中的单个文档

  • <document_array>  -  要插入到MongoDB Collection中的文档数组

  • <callback_function>   - 在Node尝试创建集合并准备好结果之后,将调用此Node.js回调函数。回调函数接收错误和结果对象作为参数。

insertOne()–示例Node.js程序

 // 我们在newdb数据库中创建“用户”集合
var url = "mongodb://localhost:27017/newdb"; 
 
// 创建一个客户端到mongodb
var MongoClient = require('mongodb').MongoClient; 
 
// 使客户端连接到mongo服务
MongoClient.connect(url, function(err, db) { 
    if (err) throw err; 
    // db指向newdb
    console.log("Switched to ",+db.databaseName+" database"); 
 
    // Fichier à insérer
    var doc = { name: "Roshan", age: "22"}; 
    
    // 使用insertOne将文档插入“用户”集合
    db.collection("users").insertOne(doc, function(err, res) { 
        if (err) throw err; 
        console.log("Document inserted"); 
        // Fermez la connexion avec db après la fin
        db.close(); 
    }); 
 });

Résultat de la sortie

$ node node-js-mongodb-insérer-document.js
Passé à la base de données newdb
Document inserted

Mongo Shell

> use newdb
switched to db newdb
> show collections
users
> db.users.find({});
{ "_id" : ObjectId("5a127729a415612642e3d6ad"), "name" : "Roshan", "age" : "22" }
>

insertMany() –示例Node.js程序

 // 我们在newdb数据库中创建“用户”集合
var url = "mongodb://localhost:27017/newdb"; 
 
// 创建一个客户端到mongodb
var MongoClient = require('mongodb').MongoClient; 
 
// 使客户端连接到mongo服务
MongoClient.connect(url, function(err, db) { 
    if (err) throw err; 
    // db指向newdb
    console.log("Switched to ",+db.databaseName+" database"); 
 
    // Fichier à insérer
    var docs = [{ name: "Udat", age: "21" }, 
                { name: "Karthik", age: "24" }, 
                { name: "Anil", age: "23" }]; 
    
    // Utiliser insertOne pour insérer plusieurs documents dans la collection "utilisateurs"
    db.collection("users").insertMany(docs, function(err, res) { 
        if (err) throw err; 
        console.log(res.insertedCount+" documents insérés"); 
        // Fermez la connexion avec db après la fin
        db.close(); 
    }); 
 });

Résultat de la sortie

$ node node-js-mongodb-insérer-beaucoup-documents.js
Passé à la base de données newdb
3 documents insérés

Mongo Shell

> db.users.find({});
{ "_id" : ObjectId("5a127729a415612642e3d6ad"), "name" : "Roshan", "age" : "22" }
{ "_id" : ObjectId("5a1278efecc5062794f4ed8d"), "name" : "Udat", "age" : "21" }
{ "_id" : ObjectId("5a1278efecc5062794f4ed8e"), "name" : "Karthik", "age" : "24" }
{ "_id" : ObjectId("5a1278efecc5062794f4ed8f"), "name" : "Anil", "age" : "23" }
>

La première entrée provient du premier exemple, les trois autres ont été insérés avec cet exemple.

Dans ce tutoriel Node.js MongoDB :  Node.js - Insérer des documents (s) dans une collection MongoDB,nous avons appris à utiliser le paquet mongodb pour insérer un ou plusieurs documents dans une collection MongoDB à partir d'une application Node.js en utilisant les méthodes insertOne() et insertMany(). Dans notre prochain tutoriel - Node.js MongoDB Find, nous apprendrons à interroger des documents dans une collection MongoDB.