Node.js连接mongodb实例代码


Posted in Javascript onJune 06, 2017

前面介绍了node.js操作mysql以及redis的内容,这里继续学习操作mongodb的内容。

安装驱动

安装命令

cnpm install mongodb

安装成功

Node.js连接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();
    });
  });

结果

Node.js连接mongodb实例代码

Node.js连接mongodb实例代码

查询数据

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(); }); });

结果

Node.js连接mongodb实例代码

更新数据

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();
  });
});

结果

Node.js连接mongodb实例代码

删除数据

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实例代码

总结

到这里就简单实现了node.js操作mongodb的实例。希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
阻止JavaScript事件冒泡传递(cancelBubble 、stopPropagation)
May 08 Javascript
分享20款好玩的jQuery游戏
Apr 17 Javascript
调试Node.JS的辅助工具(NodeWatcher)
Jan 04 Javascript
jQuery ajax(复习)—Baidu ajax request分离版
Jan 24 Javascript
jQuery页面图片伴随滚动条逐渐显示的小例子
Mar 21 Javascript
Javascript常用小技巧汇总
Jun 24 Javascript
js阻止浏览器默认行为的简单实例
May 15 Javascript
JavaScript实现左右下拉框动态增删示例
Mar 09 Javascript
第一个Vue插件从封装到发布
Nov 22 Javascript
vue init失败简单解决方法(终极版)
Dec 22 Javascript
优化Vue项目编译文件大小的方法步骤
May 27 Javascript
vue中利用mqtt服务端实现即时通讯的步骤记录
Jul 01 Vue.js
jquery实现图片放大点击切换
Jun 06 #jQuery
AngularJS 验证码60秒倒计时功能的实现
Jun 05 #Javascript
AngularJS 支付倒计时功能实现思路
Jun 05 #Javascript
解决bootstrap中使用modal加载kindeditor时弹出层文本框不能输入的问题
Jun 05 #Javascript
Vue2.0实现购物车功能
Jun 05 #Javascript
bootstrap multiselect 多选功能实现方法
Jun 05 #Javascript
JavaScript实现获取用户单击body中所有A标签内容的方法
Jun 05 #Javascript
You might like
在php和MySql中计算时间差的方法
2011/04/22 PHP
提高PHP编程效率的方法
2013/11/07 PHP
PHP中使用CURL模拟登录并获取数据实例
2014/07/01 PHP
PHP程序员常见的40个陋习,你中了几个?
2014/11/20 PHP
项目中应用Redis+Php的场景
2016/05/22 PHP
JavaScript事件委托用法分析
2015/01/24 Javascript
JS制作手机端自适应缩放显示
2015/06/11 Javascript
Boostrap模态窗口的学习小结
2016/03/28 Javascript
JS判断键盘是否按的回车键并触发指定按钮点击操作的方法
2017/02/13 Javascript
详解自定义ajax支持跨域组件封装
2018/02/08 Javascript
JS实现为动态添加的元素增加事件功能示例【基于事件委托】
2018/03/21 Javascript
浅析Vue 和微信小程序的区别、比较
2018/08/03 Javascript
vue删除html内容的标签样式实例
2018/09/13 Javascript
JavaScript页面倒计时功能完整示例
2019/05/15 Javascript
详解Jest结合Vue-test-utils使用的初步实践
2019/06/27 Javascript
解决layer 动态加载select 失效的问题
2019/09/18 Javascript
jquery中attr、prop、data区别与用法分析
2019/09/25 jQuery
[02:43]DOTA2英雄基础教程 半人马战行者
2014/01/13 DOTA
[03:14]2014DOTA2西雅图国际邀请赛 EG战队巡礼
2014/07/07 DOTA
python中模块的__all__属性详解
2017/10/26 Python
Python使用Matplotlib实现Logos设计代码
2017/12/25 Python
解决python删除文件的权限错误问题
2018/04/24 Python
python集合比较(交集,并集,差集)方法详解
2018/09/13 Python
python使用ddt过程中遇到的问题及解决方案【推荐】
2018/10/29 Python
Linux 修改Python命令的方法示例
2018/12/03 Python
python_opencv用线段画封闭矩形的实例
2018/12/05 Python
python游戏开发之视频转彩色字符动画
2019/04/26 Python
python在新的图片窗口显示图片(图像)的方法
2019/07/11 Python
python实现LRU热点缓存及原理
2019/10/29 Python
python+appium+yaml移动端自动化测试框架实现详解
2020/11/24 Python
html5使用Drag事件编辑器拖拽上传图片的示例代码
2017/08/22 HTML / CSS
HTML5拖拽文件上传的示例代码
2021/03/04 HTML / CSS
功夫熊猫观后感
2015/06/10 职场文书
《法国号》教学反思
2016/02/22 职场文书
html+css 实现简易导航栏功能
2021/04/07 HTML / CSS
浅谈MySQL之浅入深出页原理
2021/06/23 MySQL