NodeJS 基礎(chǔ)教程

NodeJS Express.js

NodeJS 緩沖&URL

NodeJS MySql

NodeJS MongoDB

NodeJS 文件(FS)

NodeJS 其他

Node.js MongoDB 插入文檔

Node.js -插入文檔到MongoDB集合

在本Node.js教程中,我們將分別使用insertOne()和insertMany()方法,通過示例,學(xué)習(xí)從Node.js應(yīng)用程序向MongoDB Collection插入一個或多個文檔。

以下是逐步指南,并提供了一個示例,該示例將文檔從Node.js應(yīng)用程序插入到MongoDB Collection中。

啟動MongoDB服務(wù)。運行以下命令以啟動MongoDB服務(wù)

sudo service mongod start

獲取MongoDB服務(wù)的基本URL。要了解MongoDB服務(wù)的基本URL,一個簡單的技巧就是打開終端并運行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]

當(dāng)Mongo Shell啟動時,它回顯MongoDB的基本URL。

mongodb://127.0.0.1:27017

準(zhǔn)備完整的URL。將您要連接的數(shù)據(jù)庫名稱(例如newdb)附加到基本URL。

mongodb://127.0.0.1:27017/newdb

創(chuàng)建一個MongoClient。

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

在URL的幫助下從MongoClient連接到MongoDB服務(wù)器。

MongoClient.connect(url, <callback_function>);

一旦完成MongoClient的嘗試建立連接,回調(diào)函數(shù)就會 收到錯誤和db對象作為參數(shù)。

如果連接成功,則db對象指向數(shù)據(jù)庫 newdb。

將文檔插入指定的MongoDB集合。以下是用于從Node.js將文檔插入到MongoDB中的集合的insertOne()和insertMay()方法的語法。

insertOne()

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

insertMany()

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

 參數(shù)說明:

  • <collection_name>  -  我們要創(chuàng)建的新MongoDB集合的名稱

  • <document> -   必須插入到MongoDB Collection中的單個文檔

  • <document_array>  -  要插入到MongoDB Collection中的文檔數(shù)組

  • <callback_function>   - 在Node嘗試創(chuàng)建集合并準(zhǔn)備好結(jié)果之后,將調(diào)用此Node.js回調(diào)函數(shù)?;卣{(diào)函數(shù)接收錯誤和結(jié)果對象作為參數(shù)。

insertOne()–示例Node.js程序

 // 我們在newdb數(shù)據(jù)庫中創(chuàng)建“用戶”集合
var url = "mongodb://localhost:27017/newdb"; 
 
// 創(chuàng)建一個客戶端到mongodb
var MongoClient = require('mongodb').MongoClient; 
 
// 使客戶端連接到mongo服務(wù)
MongoClient.connect(url, function(err, db) { 
    if (err) throw err; 
    // db指向newdb
    console.log("Switched to "+db.databaseName+" database"); 
 
    // 要插入的文件
    var doc = { name: "Roshan", age: "22" }; 
    
    // 使用insertOne將文檔插入“用戶”集合
    db.collection("users").insertOne(doc, function(err, res) { 
        if (err) throw err; 
        console.log("Document inserted"); 
        // 完成后關(guān)閉與db的連接
        db.close(); 
    }); 
 });

輸出結(jié)果

$ node node-js-mongodb-insert-document.js
Switched to newdb database
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數(shù)據(jù)庫中創(chuàng)建“用戶”集合
var url = "mongodb://localhost:27017/newdb"; 
 
// 創(chuàng)建一個客戶端到mongodb
var MongoClient = require('mongodb').MongoClient; 
 
// 使客戶端連接到mongo服務(wù)
MongoClient.connect(url, function(err, db) { 
    if (err) throw err; 
    // db指向newdb
    console.log("Switched to "+db.databaseName+" database"); 
 
    // 要插入的文件
    var docs = [{ name: "Udat", age: "21" }, 
                { name: "Karthik", age: "24" }, 
                { name: "Anil", age: "23" }]; 
    
    // 使用insertOne將多個文檔插入“用戶”集合
    db.collection("users").insertMany(docs, function(err, res) { 
        if (err) throw err; 
        console.log(res.insertedCount+" documents inserted"); 
        // 完成后關(guān)閉與db的連接
        db.close(); 
    }); 
 });

輸出結(jié)果

$ node node-js-mongodb-insert-many-documents.js
Switched to newdb database
3 documents inserted

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" }
>

第一個條目來自第一個示例,其余三個已與此示例一起插入。

在此Node.js MongoDB教程:  Node.js –插入Document(s)到MongoDB Collection中,我們學(xué)習(xí)了使用mongodb包從Node.js應(yīng)用程序中使用insertOne()和insertMany()方法將一個或多個文檔插入到MongoDB Collection中。在我們的下一個教程– Node.js MongoDB Find中,我們將學(xué)習(xí)從MongoDB Collection查詢文檔。
丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清