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 相关文章推荐
JavaScript 学习点滴记录
Apr 24 Javascript
Javascript中Eval函数的使用
Mar 23 Javascript
一个简单的JS鼠标悬停特效具体方法
Jun 17 Javascript
javascript使用正则表达式实现去掉空格之后的字符
Feb 15 Javascript
JavaScript+CSS实现的可折叠二级菜单实例
Feb 29 Javascript
JS判断指定dom元素是否在屏幕内的方法实例
Jan 23 Javascript
JavaScript错误处理和堆栈追踪详解
Apr 18 Javascript
值得分享和收藏的xmlplus组件学习教程
May 05 Javascript
浅谈Vue.nextTick 的实现方法
Oct 25 Javascript
从0到1构建vueSSR项目之node以及vue-cli3的配置
Mar 07 Javascript
JavaScript实现公告栏上下滚动效果
Mar 13 Javascript
微信小程序单选框自定义赋值
May 26 Javascript
简单谈谈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的数据库抽象层函数库
2006/10/09 PHP
Zend Framework教程之视图组件Zend_View用法详解
2016/03/05 PHP
创建一个复制UBB软件信息的链接或按钮的js代码
2008/01/06 Javascript
js中将HTMLCollection/NodeList/伪数组转换成数组的代码
2011/07/31 Javascript
JavaScript解析URL参数示例代码
2013/08/12 Javascript
JS控制阿拉伯数字转为中文大写示例代码
2013/09/04 Javascript
纯JS代码实现一键分享功能
2016/04/20 Javascript
jquery实现拖动效果
2016/08/10 Javascript
jQuery ready()和onload的加载耗时分析
2016/09/08 Javascript
详解Angular 开发环境搭建
2017/06/22 Javascript
微信小程序 蓝牙的实现实例代码
2017/06/27 Javascript
Vue实现动态创建和删除数据的方法
2018/03/17 Javascript
Vue.js标签页组件使用方法详解
2019/10/19 Javascript
Vue 解决路由过渡动画抖动问题(实例详解)
2020/01/05 Javascript
js实现简单音乐播放器
2020/06/30 Javascript
[03:52]DOTA2英雄基础教程 酒仙
2013/12/23 DOTA
Python实现改变与矩形橡胶的线条的颜色代码示例
2018/01/05 Python
详解python中asyncio模块
2018/03/03 Python
python实现石头剪刀布小游戏
2021/01/20 Python
PyCharm导入python项目并配置虚拟环境的教程详解
2019/10/13 Python
解决jupyter notebook 出现In[*]的问题
2020/04/13 Python
python numpy矩阵信息说明,shape,size,dtype
2020/05/22 Python
python二维图制作的实例代码
2020/12/03 Python
python mongo 向数据中的数组类型新增数据操作
2020/12/05 Python
Python 求向量的余弦值操作
2021/03/04 Python
Intersport西班牙:在线体育商店
2019/11/06 全球购物
what is the difference between ext2 and ext3
2013/11/03 面试题
电子商务专业学生的学习自我评价
2013/10/27 职场文书
预备党员的自我评价
2014/03/12 职场文书
网络管理专业求职信
2014/03/15 职场文书
私人会所最新创业计划书范文
2014/03/24 职场文书
企业员工薪酬方案
2014/06/04 职场文书
大学生入党积极分子自我评价
2014/09/20 职场文书
企业法人代表证明书
2014/09/27 职场文书
旅游局领导班子“四风”问题对照检查材料思想汇报
2014/09/29 职场文书
2015法院个人工作总结范文
2015/05/25 职场文书