Node.js连接mongodb实例代码

所属分类: 网络编程 / JavaScript 阅读数: 534
收藏 0 赞 0 分享

前面介绍了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的实例。希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

BootStrap数据表格实例代码

本文通过实例代码给大家分享了BootStrap数据表格的相关知识,感兴趣的朋友一起看看吧
收藏 0 赞 0 分享

基于vue的短信验证码倒计时demo

这篇文章主要介绍了基于vue的短信验证码倒计时demo,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

详解React Native开源时间日期选择器组件(react-native-datetime)

本篇文章主要介绍了详解React Native开源时间日期选择器组件(react-native-datetime),具有一定的参考价值,有兴趣的可以了解一下
收藏 0 赞 0 分享

JS库particles.js创建超炫背景粒子插件(附源码下载)

particles.js用于创建粒子的轻量级 JavaScript 库。使用方法非常简单,代码也很容易实现,下面通过本文给大家分享JS库particles.js创建超炫背景粒子插件附源码下载,需要的朋友参考下吧
收藏 0 赞 0 分享

JS库之Waypoints的用法详解

waypoints的功能非常强大,一款用于捕获各种滚动事件的插件,下面跟随脚本之家小编一起学习JS库之Waypoints的用法吧
收藏 0 赞 0 分享

强大的JavaScript响应式图表Chartist.js的使用

本篇文章主要介绍了强大的JavaScript响应式图表Chartist.js的使用,具有一定的参考价值,有兴趣的可以了解一下
收藏 0 赞 0 分享

详解wow.js中各种特效对应的类名

本篇文章主要介绍了wow.js中各种特效对应的类名 ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

JS库之Highlight.js的用法详解

highlight.js是一款轻量级的Web代码语法高亮库。下面通过实例代码给大家分享JS库之Highlight.js的用法详解,感兴趣的朋友跟随脚本之家小编一起学习吧
收藏 0 赞 0 分享

详解动画插件wow.js的使用方法

本篇文章主要介绍了动画插件wow.js的使用方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

JS库 Highlightjs 添加代码行号的实现代码

Highlightjs是一款优秀的代码高亮Js组件,可以很方便地对各种语言编写的代码添加语法高亮样式。本文重点给大家介绍Highlightjs 添加代码行号的实现代码,需要的朋友参考下吧
收藏 0 赞 0 分享
查看更多