国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

使用Nodejs連接mongodb數據庫的實現代碼

來源:懂視網 責編:小采 時間:2020-11-27 22:32:08
文檔

使用Nodejs連接mongodb數據庫的實現代碼

使用Nodejs連接mongodb數據庫的實現代碼:一個簡單的nodejs連接mongodb示例,來自 mongodb官方示例 1. 創建package.json 首先,創建我們的工程目錄connect-mongodb,并作為我們的當前目錄 mkdir connect-mongodb cd connect-mongodb 輸入npm init命令創建package.
推薦度:
導讀使用Nodejs連接mongodb數據庫的實現代碼:一個簡單的nodejs連接mongodb示例,來自 mongodb官方示例 1. 創建package.json 首先,創建我們的工程目錄connect-mongodb,并作為我們的當前目錄 mkdir connect-mongodb cd connect-mongodb 輸入npm init命令創建package.

一個簡單的nodejs連接mongodb示例,來自 mongodb官方示例

1. 創建package.json

首先,創建我們的工程目錄connect-mongodb,并作為我們的當前目錄

mkdir connect-mongodb
cd connect-mongodb

輸入npm init命令創建package.json

npm init

然后,安裝mongodb的nodejs版本driver

npm install mongodb --save

mongodb驅動包將會安裝到當前目錄下的node_modules中

2. 啟動MongoDB服務器

安裝MongoDB并啟動MongoDB數據庫服務,可參考我之前的文章,或者MongoDB官方文檔

3. 連接MongoDB

創建一個app.js文件,并添加以下代碼來連接服務器地址為192.168.0.243,mongodb端口為27017上名稱為myNewDatabase的數據庫

var MongoClient = require('mongodb').MongoClient,
 assert = require('assert');
// Connection URL
var url = 'mongodb://192.168.0.243:27017/myNewDatabase';
MongoClient.connect(url,function(err,db){
 assert.equal(null,err);
 console.log("Connection successfully to server");
 db.close();
});

在命令行輸入以下命令運行app.js

node app.js

4. 插入文檔

在app.js中添加以下代碼,使用insertMany方法添加3個文檔到documents集合中

var insertDocuments = function(db, callback){
 // get ths documents collection
 var collection = db.collection('documents');
 // insert some documents
 collection.insertMany([
 {a:1},{a:2},{a:3}
 ],function(err,result){
 assert.equal(err,null);
 assert.equal(3,result.result.n);
 assert.equal(3,result.ops.length);
 console.log("Inserted 3 documents into the collection");
 callback(result);
 });
};

insert命令返回一個包含以下屬性的對象:

  • result MongoDB返回的文檔結果
  • ops 添加了_id字段的文檔
  • connection 執行插入操作所使用的connection
  • 在app.js更新以下代碼調用insertDocuments方法

    var MongoClient = require('mongodb').MongoClient
     , assert = require('assert');
    // Connection URL
    var url = 'mongodb://localhost:27017/myproject';
    // Use connect method to connect to the server
    MongoClient.connect(url, function(err, db) {
     assert.equal(null, err);
     console.log("Connected successfully to server");
     insertDocuments(db, function() {
     db.close();
     });
    });

    在命令行中使用node app.js運行

    5. 查詢所有文檔

    添加findDocuments函數

    var findDocuments = function(db,callback){
     // get the documents collection
     var collection = db.collection('documents');
     // find some documents
     collection.find({}).toArray(function(err,docs){
     assert.equal(err,null);
     console.log("Found the following records");
     console.log(docs);
     callback(docs);
     });
    };

    findDocuments函數查詢了所有'documents'集合中所有的文檔,將此函數添加到MongoClient.connect的回調函數中

    var MongoClient = require('mongodb').MongoClient
     , assert = require('assert');
    // Connection URL
    var url = 'mongodb://localhost:27017/myproject';
    // Use connect method to connect to the server
    MongoClient.connect(url, function(err, db) {
     assert.equal(null, err);
     console.log("Connected correctly to server");
     insertDocuments(db, function() {
     findDocuments(db, function() {
     db.close();
     });
     });
    });

    6. 使用過濾條件(query filter)查詢文檔

    查詢'a':3的文檔

    var findDocuments = function(db, callback) {
     // Get the documents collection
     var collection = db.collection('documents');
     // Find some documents
     collection.find({'a': 3}).toArray(function(err, docs) {
     assert.equal(err, null);
     console.log("Found the following records");
     console.log(docs);
     callback(docs);
     }); 
    }

    7. 更新文檔

    var updateDocument = function(db,callback){
     // get the documents collection
     var collection = db.collection('documents');
     // update document where a is 2, set b equal to 1
     collection.updateOne({a:2},{
     $set:{b:1}
     },function(err,result){
     assert.equal(err,null);
     assert.equal(1,result.result.n);
     console.log("updated the document with the field a equal to 2");
     callback(result);
     });
    };

    updateDocument方法更新滿足條件a為2的第一個文檔,新增一個b屬性,并將其設置為1。

    將updateDocument方法添加到MongoClient.connect方法的回調中

    MongoClient.connect(url,function(err,db){
     assert.equal(null,err);
     console.log("Connection successfully to server");
     insertDocuments(db,function(){
     updateDocument(db,function(){
     db.close();
     });
     });
    });

    8. 刪除文檔

    var removeDocument = function(db,callback){
     // get the documents collection
     var collection = db.collection('documents');
     // remove some documents
     collection.deleteOne({a:3},function(err,result){
     assert.equal(err,null);
     assert.equal(1,result.result.n);
     console.log("removed the document with the field a equal to 3");
     callback(result);
     });
    };

    添加到app.js中

    var MongoClient = require('mongodb').MongoClient
     , assert = require('assert');
    // Connection URL
    var url = 'mongodb://localhost:27017/myproject';
    // Use connect method to connect to the server
    MongoClient.connect(url, function(err, db) {
     assert.equal(null, err);
     console.log("Connected successfully to server");
     insertDocuments(db, function() {
     updateDocument(db, function() {
     removeDocument(db, function() {
     db.close();
     });
     });
     });
    });

    9. 創建索引

    索引能夠改善應用的性能。下面你代碼在'a'屬性上添加索引

    var indexCollection = function(db,callback){
     db.collection('documents').createIndex({
     a:1
     },null,function(err,results){
     console.log(results);
     callback();
     });
    };

    更新app.js

    MongoClient.connect(url,function(err,db){
     assert.equal(null,err);
     console.log("Connection successfully to server");
     insertDocuments(db,function(){
     indexCollection(db,function(){
     db.close();
     });
     });
    });

    代碼已經托管在碼云

    總結

    以上所述是小編給大家介紹的使用Nodejs連接mongodb數據庫的實現代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

    聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    使用Nodejs連接mongodb數據庫的實現代碼

    使用Nodejs連接mongodb數據庫的實現代碼:一個簡單的nodejs連接mongodb示例,來自 mongodb官方示例 1. 創建package.json 首先,創建我們的工程目錄connect-mongodb,并作為我們的當前目錄 mkdir connect-mongodb cd connect-mongodb 輸入npm init命令創建package.
    推薦度:
    標簽: js 代碼 數據庫
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 亚洲 欧美 日韩 小说 另类 | 日韩 亚洲 制服 欧美 综合 | 日韩欧美综合 | 欧美精品日韩一区二区三区 | 亚洲欧洲第一页 | 欧美亚洲自拍偷拍 | 99久久精品国产一区二区三区 | 日本丶国产丶欧美色综合 | 欧美日韩亚洲综合 | 久久国产免费一区 | 国产69精品久久久久777 | 亚洲欧美日本在线 | 福利视频一区 | 亚洲欧美第一 | 国产精品美女久久久久 | 在线日韩视频 | 国产精品久久久久久永久牛牛 | 国产成人精品日本亚洲语音1 | 亚洲一区二区三区成人 | 欧美日韩国产一区 | 欧美日韩极品 | 国产一区系列在线观看 | 亚洲伊人国产 | 国产免费高清视频在线观看不卡 | 亚洲视频在线观看免费 | 亚洲欧美自拍偷拍 | 欧美在线二区 | 日韩欧美视频在线播放 | 久久久久久穴 | 亚洲国产精品一区二区久久 | 九九九国产在线 | 欧美中日韩在线 | 毛片免费网站 | 在线欧美日韩精品一区二区 | 亚洲欧美综合视频 | 欧美精品一区二区三区免费播放 | 视频在线一区 | 成人在线一区二区三区 | 亚洲精品视频免费观看 | 日韩欧美亚洲综合一区二区 | 看全色黄大色大片免费久久久 |