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 相关文章推荐
js 实现菜单上下显示附效果图
Nov 21 Javascript
jQuery使用hide方法隐藏页面上指定元素的方法
Mar 30 Javascript
使用Script元素发送JSONP请求的方法
Jun 12 Javascript
聊一聊jQuery插件uploadify使用方法
Aug 24 Javascript
基于jQuery实现瀑布流页面
Apr 11 jQuery
Angular中ng-options下拉数据默认值的设定方法
Jun 21 Javascript
angular4中*ngFor不能对返回来的对象进行循环的解决方法
Sep 12 Javascript
详解如何创建并发布一个 vue 组件
Nov 08 Javascript
微信小程序学习笔记之跳转页面、传递参数获得数据操作图文详解
Mar 28 Javascript
jquery获取input输入框中的值
Nov 13 jQuery
Vue组件通信中非父子组件传值知识点总结
Dec 05 Javascript
js实现简易拖拽的示例
Oct 26 Javascript
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
关于Appserv无法打开localhost问题的解决方法
2009/10/16 PHP
PHP设计模式之解释器模式的深入解析
2013/06/13 PHP
ThinkPHP 404页面的设置方法
2015/01/14 PHP
php curl请求信息和返回信息设置代码实例
2015/04/27 PHP
PHP实现根据时间戳获取周几的方法
2016/02/26 PHP
Yii中CGridView禁止列排序的设置方法
2016/07/12 PHP
Zend Framework入门教程之Zend_View组件用法示例
2016/12/09 PHP
kindeditor 加入七牛云上传的实例讲解
2017/11/12 PHP
基于JQuery 的消息提示框效果代码
2011/07/31 Javascript
javascript针对DOM的应用分析(三)
2012/04/15 Javascript
jQuery.extend()的实现方式详解及实例
2013/06/29 Javascript
快速解决FusionCharts联动的中文乱码问题
2013/12/04 Javascript
JS+CSS实现大气清新的滑动菜单效果代码
2015/10/22 Javascript
详解Wondows下Node.js使用MongoDB的环境配置
2016/03/01 Javascript
js阻止浏览器默认行为触发的通用方法(推荐)
2016/05/15 Javascript
基于jQuery实现滚动切换效果
2016/12/02 Javascript
vue2实现移动端上传、预览、压缩图片解决拍照旋转问题
2017/04/13 Javascript
AngularJS实现的JSONP跨域访问数据传输功能详解
2017/07/20 Javascript
深入理解 Koa 框架中间件原理
2018/10/18 Javascript
jsonp跨域获取百度联想词的方法分析
2019/05/13 Javascript
js仿360开机效果
2019/12/26 Javascript
Python爬取qq空间说说的实例代码
2018/08/17 Python
python中aioysql(异步操作MySQL)的方法
2019/04/11 Python
在PYQT5中QscrollArea(滚动条)的使用方法
2019/06/14 Python
Pycharm新建模板默认添加个人信息的实例
2019/07/15 Python
Python中正反斜杠(‘/’和‘\’)的意义与用法
2019/08/12 Python
tensorflow实现从.ckpt文件中读取任意变量
2020/05/26 Python
Python 如何操作 SQLite 数据库
2020/08/17 Python
python 牛顿法实现逻辑回归(Logistic Regression)
2020/10/15 Python
Kneipp克奈圃美国官网:德国百年精油配方的传承
2018/02/07 全球购物
英国领先的维生素和补充剂品牌:Higher Nature
2019/08/26 全球购物
工程造价与财务管理专业应届生求职信
2013/10/06 职场文书
冰雪公主观后感
2015/06/16 职场文书
品德与社会教学反思
2016/02/24 职场文书
为什么MySQL 删除表数据 磁盘空间还一直被占用
2021/10/16 MySQL
解决Git推送错误non-fast-forward的方法
2022/06/25 Servers