node.js操作MongoDB的实例详解


Posted in Javascript onOctober 11, 2017

node.js操作MongoDB时,需要安装mongodb包

1、使用npm安装cnpm

npm install -g cnpm --registry=https://registry.npm.taobao.org

2、使用cnpm安装mongodb包

cnpm install mongodb

node.js操作MongoDB的实例详解

node.js操作MongoDB的实例详解

node.js操作MongoDB时的四种方式:插入数据、更新数据、删除数据、查找数据。

操作步骤
步骤1 创建执行文件xx.js
步骤2 终端调用执行文件 node xx.js

注意:
操作前需要启动服务器
同时需要设置操作的数据库、操作的集合

node.js操作MongoDB的实例详解

node.js操作MongoDB的实例详解

node.js操作MongoDB的实例详解

node.js操作MongoDB的实例详解

node.js操作MongoDB的实例详解

1、插入数据

var MongoClient = require('mongodb').MongoClient;
var DB_CONN_STR = 'mongodb://localhost:27017/col';

var writeData = function(db, callback) {
  // 连接到集合
  var collection = db.collection('person');
  // 插入数据
  var data = [{'name':'20170906','age':'22'}];
  collection.insert(data, function(error, result) {
    if (error) {
      console.log('error:' + error);
      return;
    };

    callback(result);
  });
}

MongoClient.connect(DB_CONN_STR, function(error, db) {
  console.log('连接成功');
  writeData(db, function(result) {
    console.log(result);
    db.close();
  })
})

2、更新数据

var MongoClient = require('mongodb').MongoClient;
var DB_CONN_STR = 'mongodb://localhost:27017/col';

var updateData = function(db, callback) {
  // 连接到集合
  var collection = db.collection('person');
  // 修改数据
  var where = {'name':'20170906'};
  var update = {$set:{'age':'33'}};
  collection.update(where, update, function(error, result) {
    if (error) {
      console.log('error:' + error);
      return;
    };

    callback(result);
  });
}

MongoClient.connect(DB_CONN_STR, function(error, db) {
  console.log('连接成功');
  updateData(db, function(result) {
    console.log(result);
    db.close();
  })
})

3、删除数据

var MongoClient = require('mongodb').MongoClient;
var DB_CONN_STR = 'mongodb://localhost:27017/col';

var removeData = function(db, callback) {
  // 连接到集合
  var collection = db.collection('person');
  // 删除数据
  var where = {'age':'22'};
  collection.remove(where, function(error, result) {
    if (error) {
      console.log('error:' + error);
      return;
    };

    callback(result);
  });
}

MongoClient.connect(DB_CONN_STR, function(error, db) {
  console.log('连接成功');
  removeData(db, function(result) {
    console.log(result);
    db.close();
  })
})

4、查找数据

var MongoClient = require('mongodb').MongoClient;
var DB_CONN_STR = 'mongodb://localhost:27017/col';

var readData = function(db, callback) {
  // 连接到集合
  var collection = db.collection('person');
  // 查询数据
  var where = {'name':'20170906'};
  collection.find(where).toArray(function(error, result) {
    if (error) 
    {
      console.log('error:' + error);
      return;
    };

    callback(result);
  });
}

MongoClient.connect(DB_CONN_STR, function(error, db) {
  console.log('连接成功');
  readData(db, function(result) {
    console.log(result);
    db.close();
  })
})

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
做网页的一些技巧
Feb 01 Javascript
jQuery EasyUI API 中文文档 - Pagination分页
Sep 29 Javascript
JavaScript 匿名函数(anonymous function)与闭包(closure)
Oct 04 Javascript
js中window.open()的所有参数详细解析
Jan 09 Javascript
JavaScript的面向对象编程基础
Aug 13 Javascript
JS实现下拉菜单赋值到文本框的方法
Aug 18 Javascript
jQuery实现下滑菜单导航效果代码
Aug 25 Javascript
jQuery控制DIV层实现由大到小,由远及近动画变化效果
Oct 09 Javascript
折叠菜单及选择器的运用
Feb 03 Javascript
4个顶级JavaScript高级文本编辑器
Oct 10 Javascript
react 原生实现头像滚动播放的示例
Apr 21 Javascript
如何正确解决VuePress本地访问出现资源报错404的问题
Dec 03 Vue.js
简单谈谈vue的过渡动画(推荐)
Oct 11 #Javascript
Vue-router结合transition实现app前进后退动画切换效果的实例
Oct 11 #Javascript
jQuery实现的事件绑定功能基本示例
Oct 11 #jQuery
AngularJS中下拉框的高级用法示例
Oct 11 #Javascript
详解从Vue.js源码看异步更新DOM策略及nextTick
Oct 11 #Javascript
AngularJS中下拉框的基本用法示例
Oct 11 #Javascript
Node.js学习之TCP/IP数据通讯(实例讲解)
Oct 11 #Javascript
You might like
解决MySQL中文输出变成问号的问题
2008/06/05 PHP
zf框架的校验器InArray使用示例
2014/03/13 PHP
学习jquery之一
2007/04/27 Javascript
js登录弹出层特效
2014/03/07 Javascript
浅析javascript操作 cookie对象
2014/12/26 Javascript
JQuery实现的购物车功能(可以减少或者添加商品并自动计算价格)
2015/01/13 Javascript
深入理解JavaScript系列(38):设计模式之职责链模式详解
2015/03/04 Javascript
angularjs自定义ng-model标签的属性
2016/01/21 Javascript
AngularJS学习笔记之依赖注入详解
2016/05/16 Javascript
微信小程序表单弹窗实例
2018/07/19 Javascript
探秘vue-rx 2.0(推荐)
2018/09/21 Javascript
原生JS实现轮播图效果
2018/10/12 Javascript
使用easyui从servlet传递json数据到前端页面的两种方法
2019/09/05 Javascript
Vue.extend 编程式插入组件的实现
2019/11/18 Javascript
微信小程序视频弹幕发送功能的实现
2020/12/28 Javascript
[01:23]一分钟告诉你 DOTA2为什么叫信仰2
2014/06/20 DOTA
Python3中的2to3转换工具使用示例
2015/06/12 Python
Python随机数用法实例详解【基于random模块】
2017/04/18 Python
Python selenium实现微博自动登录的示例代码
2018/05/16 Python
Python 十六进制整数与ASCii编码字符串相互转换方法
2018/07/09 Python
使用sklearn之LabelEncoder将Label标准化的方法
2018/07/11 Python
django如何连接已存在数据的数据库
2018/08/14 Python
DRF跨域后端解决之django-cors-headers的使用
2019/01/27 Python
python使用selenium实现批量文件下载
2019/03/11 Python
Django-migrate报错问题解决方案
2020/04/21 Python
获取python运行输出的数据并解析存为dataFrame实例
2020/07/07 Python
CSS3 倾斜的网页图片库实例教程
2009/11/14 HTML / CSS
美国宠物商店:Wag.com
2016/10/25 全球购物
Senreve官网:美国旧金山的奢侈手袋品牌
2019/03/21 全球购物
美国领先的个性化礼品商城:Personalization Mall
2019/07/27 全球购物
创业计划书撰写原则
2014/01/25 职场文书
《雪儿》教学反思
2014/04/17 职场文书
先进工作者申报材料
2014/12/23 职场文书
博士生专家推荐信
2015/03/25 职场文书
网站文案策划岗位职责
2015/04/14 职场文书
CKAD认证中部署k8s并配置Calico插件
2022/03/31 Servers