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 相关文章推荐
用倒置滤镜把div倒置,再把table倒置。
Jul 31 Javascript
js实现目录定位正文示例
Nov 14 Javascript
jQuery 设置 CSS 属性示例介绍
Jan 16 Javascript
第六篇Bootstrap表格样式介绍
Jun 21 Javascript
Js得到radiobuttonlist选中值的两种方法(推荐)
Aug 25 Javascript
Node.js和Express简单入门介绍
Mar 24 Javascript
Vue.js样式动态绑定实现小结
Jan 24 Javascript
vue实现Input输入框模糊查询方法
Jan 29 Javascript
JS实现随机抽选获奖者
Nov 07 Javascript
JS实现TITLE悬停长久显示效果完整示例
Feb 11 Javascript
基于vue+echarts 数据可视化大屏展示的方法示例
Mar 09 Javascript
微信h5静默和非静默授权获取用户openId的方法和步骤
Jun 08 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
PHP 的 __FILE__ 常量
2007/01/15 PHP
php 获取mysql数据库信息代码
2009/03/12 PHP
Yii2搭建后台并实现rbac权限控制完整实例教程
2016/04/28 PHP
php 多文件上传的实现实例
2016/10/23 PHP
PHP手机号中间四位用星号*代替显示的实例
2017/06/02 PHP
jQuery的一些特性和用法整理小结
2010/01/13 Javascript
事件模型在各浏览器中存在差异
2010/10/20 Javascript
js使浏览器窗口最大化实现代码(适用于IE)
2013/08/07 Javascript
JavaScript使用HTML5的window.postMessage实现跨域通信例子
2014/04/11 Javascript
Node.js异步I/O学习笔记
2014/11/04 Javascript
z-blog SyntaxHighlighter 长代码无法换行解决办法(jquery)
2014/11/16 Javascript
多个jQuery版本共存的处理方案
2015/03/17 Javascript
jQuery插件zepto.js简单实现tab切换
2015/06/16 Javascript
JavaScript实现节点的删除与序号重建实例
2015/08/05 Javascript
Bootstrap导航简单实现代码
2017/03/06 Javascript
jquery 手势密码插件
2017/03/17 Javascript
聊聊那些使用前端Javascript实现的机器学习类库
2017/09/18 Javascript
vue如何获取自定义元素属性参数值的方法
2019/05/14 Javascript
javaScript中indexOf用法技巧
2019/11/26 Javascript
jQuery使用jsonp实现百度搜索的示例代码
2020/07/08 jQuery
Vue使用路由钩子拦截器beforeEach和afterEach监听路由
2020/11/16 Javascript
[54:10]Spirit vs NB Supermajor小组赛 A组败者组决赛 BO3 第一场 6.2
2018/06/03 DOTA
python3模拟百度登录并实现百度贴吧签到示例分享(百度贴吧自动签到)
2014/02/24 Python
跟老齐学Python之有点简约的元组
2014/09/24 Python
解析Python中的__getitem__专有方法
2016/06/27 Python
Python3.5编程实现修改IIS WEB.CONFIG的方法示例
2017/08/18 Python
Python实现类似比特币的加密货币区块链的创建与交易实例
2018/03/20 Python
python实现计数排序与桶排序实例代码
2019/03/28 Python
Python对ElasticSearch获取数据及操作
2019/04/24 Python
matlab中imadjust函数的作用及应用举例
2020/02/27 Python
浅谈SciPy中的optimize.minimize实现受限优化问题
2020/02/29 Python
英国豪华装饰照明品牌的在线零售商:Inspyer Lighting
2019/12/10 全球购物
盛大二次面试题
2016/11/18 面试题
家长会后的感想
2015/08/11 职场文书
Sql-Server数据库单表查询 4.3实验课
2021/04/05 SQL Server
手写Spirit防抖函数underscore和节流函数lodash
2022/03/22 Javascript