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(一)--- Node.js简介及安装开发环境
May 20 NodeJs
基于 Docker 开发 NodeJS 应用
Jul 30 NodeJs
基于NodeJS的前后端分离的思考与实践(三)轻量级的接口配置建模框架
Sep 26 NodeJs
NodeJs——入门必看攻略
Jun 27 NodeJs
Nodejs全局安装和本地安装的不同之处
Jul 04 NodeJs
Nodejs从有门道无门菜鸟起飞必看教程
Jul 20 NodeJs
windows 下安装nodejs 环境变量设置
Feb 02 NodeJs
NodeJs下的测试框架Mocha的简单介绍
Feb 22 NodeJs
nodeJs爬虫的技术点总结
May 13 NodeJs
NodeJs实现简单的爬虫功能案例分析
Dec 05 NodeJs
NodeJs入门教程之定时器和队列
Mar 08 NodeJs
nodejs语言实现验证码生成功能的示例代码
Oct 13 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
《雄兵连》系列首部大电影《烈阳天道》:可能是因为期望值太高了
2020/08/18 国漫
thinkphp区间查询、统计查询与SQL直接查询实例分析
2014/11/24 PHP
php开发工具有哪五款
2015/11/09 PHP
PHP工厂模式简单实现方法示例
2018/05/23 PHP
利用ASP发送和接收XML数据的处理方法与代码
2007/11/13 Javascript
JavaScript 继承详解(四)
2009/07/13 Javascript
javascript IFrame 强制刷新代码
2009/07/23 Javascript
Grid得到选择行数据的方法总结
2011/01/17 Javascript
js中符号转意问题示例探讨
2013/08/19 Javascript
js键盘事件的keyCode
2014/07/29 Javascript
Javascript中arguments用法实例分析
2015/06/13 Javascript
jQuery地图map悬停显示省市代码分享
2015/08/20 Javascript
jQuery实现从身份证号中获取出生日期和性别的方法分析
2016/02/25 Javascript
详解js中call与apply关键字的作用
2016/11/21 Javascript
JS敏感词过滤代码
2016/12/23 Javascript
web 屏蔽BackSpace键实例代码
2016/12/24 Javascript
浅谈angularjs中响应回车事件
2017/04/24 Javascript
JavaScript函数表达式详解及实例
2017/05/05 Javascript
JS sort排序详细使用方法示例解析
2020/09/27 Javascript
[38:23]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS LGD第一场
2014/05/24 DOTA
[07:43]《辉夜杯》公开赛晋级外卡赛战队—TRG训练生活探秘
2015/12/11 DOTA
python实现八大排序算法(2)
2017/09/14 Python
python检测主机的连通性并记录到文件的实例
2018/06/21 Python
pyqt5 获取显示器的分辨率的方法
2019/06/18 Python
python读取word 中指定位置的表格及表格数据
2019/10/23 Python
tensorflow 实现打印pb模型的所有节点
2020/01/23 Python
python+selenium+PhantomJS抓取网页动态加载内容
2020/02/25 Python
keras读取h5文件load_weights、load代码操作
2020/06/12 Python
纯css3(无图片/js)制作的几个社交媒体网站的图标
2013/03/21 HTML / CSS
HTML5制作表格样式
2016/11/15 HTML / CSS
eBay瑞士购物网站:eBay.ch
2018/12/24 全球购物
Paper Cape官网:美国婴儿和儿童服装品牌
2019/11/02 全球购物
教育基金募捐倡议书
2014/05/14 职场文书
大足石刻导游词
2015/02/02 职场文书
课外活动总结
2015/02/04 职场文书
解决vue-router的beforeRouteUpdate不能触发
2022/04/14 Vue.js