Nodejs实现的操作MongoDB数据库功能完整示例


Posted in NodeJs onFebruary 02, 2019

本文实例讲述了Nodejs实现的操作MongoDB数据库功能。分享给大家供大家参考,具体如下:

mongodb_demo.js

/**
cnpm install mongodb
 */
var MongoClient = require('mongodb').MongoClient;
var DB_CONN_STR = 'mongodb://test:123456@127.0.0.1:27017/test'; // 数据库为 test
var insertData = function (db, callback) {
  //连接到表 site
  var collection = db.collection('site');
  //插入数据
  var data = [{ "name": "网站1", "url": "www.test1.com" }, { "name": "网站2", "url": "www.test2.com" }];
  collection.insert(data, function (err, result) {
    if (err) {
      console.log('Error:' + err);
      return;
    }
    callback(result);
  });
}
var selectData = function (db, callback) {
  //连接到表
  var collection = db.collection('site');
  //查询数据
  var whereStr = { "name": '网站1' };
  collection.find(whereStr).toArray(function (err, result) {
    if (err) {
      console.log('Error:' + err);
      return;
    }
    callback(result);
  });
}
var updateData = function (db, callback) {
  //连接到表
  var collection = db.collection('site');
  //更新数据
  var whereStr = { "name": '网站1' };
  var updateStr = { $set: { "url": "https://www.test1.com" } };
  collection.update(whereStr, updateStr, function (err, result) {
    if (err) {
      console.log('Error:' + err);
      return;
    }
    callback(result);
  });
}
var delData = function (db, callback) {
  //连接到表
  var collection = db.collection('site');
  //删除数据
  var whereStr = { "name": '网站1' };
  collection.remove(whereStr, 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("连接成功!");
  //1、插入
  insertData(db, function (result) {
    console.log(result);
    db.close();
  });
  //2、查询数据
  selectData(db, function (result) {
    console.log(result);
    db.close();
  });
  //3、更新数据
  updateData(db, function (result) {
    console.log(result);
    db.close();
  });
  //4、删除数据
  delData(db, function (result) {
    console.log(result);
    db.close();
  });
});

运行:

node mongodb_demo.js

希望本文所述对大家nodejs程序设计有所帮助。

NodeJs 相关文章推荐
NodeJS Express框架中处理404页面一个方式
May 28 NodeJs
轻松创建nodejs服务器(10):处理上传图片
Dec 18 NodeJs
使用NodeJs 开发微信公众号(三)微信事件交互实例
Mar 02 NodeJs
Nodejs读取文件时相对路径的正确写法(使用fs模块)
Apr 27 NodeJs
nodejs处理图片的中间件node-images详解
May 08 NodeJs
nodejs+mongodb+vue前后台配置ueditor的示例代码
Jan 02 NodeJs
webstorm中配置nodejs环境及npm的实例
May 15 NodeJs
nodejs的路径问题的解决
Jun 30 NodeJs
详解NodeJS Https HSM双向认证实现
Mar 12 NodeJs
typescript nodejs 依赖注入实现方法代码详解
Jul 21 NodeJs
图解NodeJS实现登录注册功能
Sep 16 NodeJs
Nodejs 微信小程序消息推送的实现
Jan 20 NodeJs
基于Koa(nodejs框架)对json文件进行增删改查的示例代码
Feb 02 #NodeJs
用Electron写个带界面的nodejs爬虫的实现方法
Jan 29 #NodeJs
NVM安装nodejs的方法实用步骤
Jan 16 #NodeJs
nodeJS进程管理器pm2的使用
Jan 09 #NodeJs
NodeJS模块与ES6模块系统语法及注意点详解
Jan 04 #NodeJs
nodejs 使用http进行post或get请求的实例(携带cookie)
Jan 03 #NodeJs
详解nodejs 配置文件处理方案
Jan 02 #NodeJs
You might like
动态生成gif格式的图像要注意?
2006/10/09 PHP
php与java通过socket通信的实现代码
2013/10/21 PHP
php实现将wav文件转换成图像文件并在页面中显示的方法
2015/04/21 PHP
利用PHP脚本在Linux下用md5函数加密字符串的方法
2015/06/29 PHP
jQuery 研究心得 取得属性的值
2007/11/30 Javascript
限制textbox或textarea输入字符长度的JS代码
2013/10/16 Javascript
javascript实现的平方米、亩、公顷单位换算小程序
2014/08/11 Javascript
jquery编写Tab选项卡滚动导航切换特效
2020/07/17 Javascript
jQuery的deferred对象使用详解
2016/09/25 Javascript
javascript动画系列之模拟滚动条
2016/12/13 Javascript
nodeJS删除文件方法示例
2016/12/25 NodeJs
JS在浏览器中解析Base64编码图像
2017/02/09 Javascript
JavaScript编写棋盘覆盖代码详解
2017/08/28 Javascript
使用vue-cli创建项目的图文教程(新手入门篇)
2018/05/02 Javascript
五分钟搞懂Vuex实用知识(小结)
2019/08/12 Javascript
vue项目中使用AES实现密码加密解密(ECB和CBC两种模式)
2019/08/12 Javascript
微信小程序wx.navigateTo方法里的events参数使用详情及场景
2020/01/07 Javascript
24个解决实际问题的ES6代码片段(小结)
2020/02/02 Javascript
[01:01:52]DOTA2-DPC中国联赛定级赛 SAG vs iG BO3第二场 1月9日
2021/03/11 DOTA
Python抓取框架 Scrapy的架构
2016/08/12 Python
python访问抓取网页常用命令总结
2017/04/11 Python
深入浅析Python2.x和3.x版本的主要区别
2018/11/30 Python
Python遍历文件夹 处理json文件的方法
2019/01/22 Python
PyTorch的SoftMax交叉熵损失和梯度用法
2020/01/15 Python
python去除删除数据中\u0000\u0001等unicode字符串的代码
2020/03/06 Python
Tensorflow与Keras自适应使用显存方式
2020/06/22 Python
Python实现Excel自动分组合并单元格
2021/02/22 Python
北美领先的智能产品购物网站:Wellbots
2018/06/11 全球购物
情况说明书格式范文
2014/05/06 职场文书
学习教师敬业奉献模范事迹材料思想汇报
2014/09/19 职场文书
酒店员工手册范本
2015/05/14 职场文书
运动会观后感
2015/06/09 职场文书
无婚姻登记记录证明
2015/06/18 职场文书
让文件路径提取变得更简单的Python Path库
2021/05/27 Python
mysql外连接与内连接查询的不同之处
2021/06/03 MySQL
4种方法python批量修改替换列表中元素
2022/04/07 Python