前面介紹了node.js操作mysql以及redis的內容,這里繼續學習操作mongodb的內容。
安裝驅動
安裝命令
cnpm install mongodb
安裝成功

數據庫操作
因為mongodb是文檔類型的數據庫,與mysql有很大不同,mongodb會自動創建數據庫和集合,并不需要提前進行手動創建。
Insert
var MongoClient = require("mongodb").MongoClient;var DB_CONN_STR = "mongodb://sa:sa@localhost:27017/test_db";var insertData = function (db, callback) {  //連接數據表my_firsrt_collection  var collection = db.collection("my_firsrt_collection");  var data = [{ "name": "wolfy1", "age": 20 }, { "name": "wolfy2", "age": 20 }]  collection.insert(data, function (err, result) {    if (err) {      console.log("error:" + err);      return;    };    callback(result);  });}; MongoClient.connect(DB_CONN_STR, function (err, db) {    if (err) {      console.log("連接失?。? + err);      return;    };    console.log("連接成功");    insertData(db,function(result){      console.log(result);      db.close();    });  });結果


查詢數據
var MongoClient = require("mongodb").MongoClient;var DB_CONN_STR = "mongodb://sa:sa@localhost:27017/test_db"; //查詢 var queryData = function (db, callback) { //連接數據表my_firsrt_collection var collection = db.collection("my_firsrt_collection"); //查詢條件 var where = { "name": "wolfy1" }; collection.find(where).toArray(function (err, result) { if (err) { console.log("error:" + err); return; }; callback(result); }); }; MongoClient.connect(DB_CONN_STR, function (err, db) { if (err) { console.log("連接失敗:" + err); return; }; console.log("連接成功"); queryData(db, function (result) { console.log(result); db.close(); }); });結果

更新數據
var MongoClient = require("mongodb").MongoClient;var DB_CONN_STR = "mongodb://sa:sa@localhost:27017/test_db";//查詢var updateData = function (db, callback) {  //連接數據表my_firsrt_collection  var collection = db.collection("my_firsrt_collection");  //查詢條件  var where = { "name": "wolfy1" };  var updateStr={$set:{"address":"http://www.cnblogs.com/wolf-sun/"}};  collection.update(where,updateStr,function (err, result) {    if (err) {      console.log("error:" + err);      return;    };    callback(result);  });};MongoClient.connect(DB_CONN_STR, function (err, db) {  if (err) {    console.log("連接失?。? + err);    return;  };  console.log("連接成功");  updateData(db, function (result) {    console.log(result);    db.close();  });});結果

刪除數據
var MongoClient = require("mongodb").MongoClient;var DB_CONN_STR = "mongodb://sa:sa@localhost:27017/test_db";//刪除var deleteData = function (db, callback) {  //連接數據表my_firsrt_collection  var collection = db.collection("my_firsrt_collection");  //查詢條件  var where = { "name": "wolfy1" };  collection.remove(where, function (err, result) {    if (err) {      console.log("error:" + err);      return;    };    callback(result);  });};MongoClient.connect(DB_CONN_STR, function (err, db) {  if (err) {    console.log("連接失?。? + err);    return;  };  console.log("連接成功");  deleteData(db, function (result) {    console.log(result);    db.close();  });});結果

總結
到這里就簡單實現了node.js操作mongodb的實例。希望對大家的學習有所幫助,也希望大家多多支持武林網。
新聞熱點
疑難解答