Node.js操作MongoDB数据库实例分析


Posted in Javascript onJanuary 19, 2020

本文实例讲述了Node.js操作MongoDB数据库。分享给大家供大家参考,具体如下:

Node.js操作MongoDB

npm init
npm i mongodb --save
{
 "name": "test",
 "version": "1.0.0",
 "description": "",
 "main": "app.js",
 "scripts": {
  "test": "echo \"Error: no test specified\" && exit 1"
 },
 "author": "",
 "license": "ISC",
 "dependencies": {
  "mongodb": "^3.1.1"
 }
}

连接数据库

// connect.js
const MongoClient = require('mongodb').MongoClient;
// Connection URL
const url = 'mongodb://localhost:27017';
// Database Name
const dbName = 'mydatabase';
// Use connect method to connect to the server
MongoClient.connect(url, { useNewUrlParser: true }, function(err, client) {
 console.log("Connected successfully to server");
 const db = client.db(dbName);
 client.close();
});

插入

// insert.js
const MongoClient = require('mongodb').MongoClient;
// Connection URL
const url = 'mongodb://localhost:27017';
// Database Name
const dbName = 'mydatabase';
// 插入
var insertData = function (db, callback) {
 // 获取文档集合
 var collection = db.collection('collection3');
 var data = [{"name": "李二狗001", "age": 20}, {"name": "李二狗002", "age": 21}];
 // 插入文档
 collection.insert(data, function (err, result) {
  if(err) {
   console.log('Error: ' + err);
   return;
  }
  callback(result);
 })
}
// Use connect method to connect to the server
MongoClient.connect(url, { useNewUrlParser: true }, function(err, client) {
 console.log("Connected successfully to server");
 const db = client.db(dbName);
 insertData(db, function (result) {
  console.log(result);
  client.close();
 });
});

查询

// find.js
const MongoClient = require('mongodb').MongoClient;
// Connection URL
const url = 'mongodb://localhost:27017';
// Database Name
const dbName = 'mydatabase';
// 查询
var findData = function (db, callback) {
 // 获取文档集合
 var collection = db.collection('collection3');
 var whereStr = {"name": "李二狗001"};
 // 查询文档
 collection.find(whereStr).toArray(function (err, result) {
  if(err) {
   console.log('Error: ' + err);
   return;
  }
  callback(result);
 })
}
// Use connect method to connect to the server
MongoClient.connect(url, { useNewUrlParser: true }, function(err, client) {
 console.log("Connected successfully to server");
 const db = client.db(dbName);
 findData(db, function (result) {
  console.log(result);
  client.close();
 })
});

修改

// update.js
const MongoClient = require('mongodb').MongoClient;
// Connection URL
const url = 'mongodb://localhost:27017';
// Database Name
const dbName = 'mydatabase';
// 修改
var updateData = function (db, callback) {
 // 获取文档集合
 var collection = db.collection('collection3');
 var whereStr = {"name": "李二狗002"};
 var updateStr = {$set: {"age": 100}};
 // 修改文档
 collection.update(whereStr, updateStr, function (err, result) {
  if(err) {
   console.log('Error: ' + err);
   return;
  }
  callback(result);
 })
}
// Use connect method to connect to the server
MongoClient.connect(url, { useNewUrlParser: true }, function(err, client) {
 console.log("Connected successfully to server");
 const db = client.db(dbName);
 updateData(db, function (result) {
  console.log(result);
  client.close();
 })
});

删除

// delete.js
const MongoClient = require('mongodb').MongoClient;
// Connection URL
const url = 'mongodb://localhost:27017';
// Database Name
const dbName = 'mydatabase';
// 删除
var delData = function (db, callback) {
 // 获取文档集合
 var collection = db.collection('collection3');
 var whereStr = {"name": "李二狗002"};
 // 删除文档
 collection.remove(whereStr, function (err, result) {
  if(err) {
   console.log('Error: ' + err);
   return;
  }
  callback(result);
 })
}
// Use connect method to connect to the server
MongoClient.connect(url, { useNewUrlParser: true }, function(err, client) {
 console.log("Connected successfully to server");
 const db = client.db(dbName);
  delData(db, function (result) {
  console.log(result);
  client.close();
 })
});

参考:

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

Javascript 相关文章推荐
用js怎么把&字符换成"&amp:"
Oct 19 Javascript
用javascript实现的激活输入框后隐藏初始内容
Jun 29 Javascript
js的写法基础分析
Jan 17 Javascript
IE6浏览器下resize事件被执行了多次解决方法
Dec 11 Javascript
JavaScript实现页面实时显示当前时间的简单实例
Jul 20 Javascript
jQuery后代选择器用法实例
Dec 23 Javascript
JavaScript DOM元素尺寸和位置
Apr 13 Javascript
漂亮! js实现颜色渐变效果
Aug 12 Javascript
详解webpack 多页面/入口支持&公共组件单独打包
Jun 29 Javascript
微信小程序实现action-sheet弹出底部菜单功能【附源码下载】
Dec 09 Javascript
vue对storejs获取的数据进行处理时遇到的几种问题小结
Mar 20 Javascript
ES6知识点整理之函数对象参数默认值及其解构应用示例
Apr 17 Javascript
JS运算符简单用法示例
Jan 19 #Javascript
Vue 微信端扫描二维码苹果端却只能保存图片问题(解决方法)
Jan 19 #Javascript
JS基础之逻辑结构与循环操作示例
Jan 19 #Javascript
js实现图片上传到服务器和回显
Jan 19 #Javascript
ES6如何用一句代码实现函数的柯里化
Jan 18 #Javascript
ES6 Object.assign()的用法及其使用
Jan 18 #Javascript
vue项目中监听手机物理返回键的实现
Jan 18 #Javascript
You might like
Apache2 httpd.conf 中文版
2006/12/06 PHP
apache+php完美解决301重定向的两种方法
2011/06/08 PHP
php中使用DOM类读取XML文件的实现代码
2011/12/14 PHP
PHP+MYSQL会员系统的开发实例教程
2014/08/23 PHP
[原创]php使用strpos判断字符串中数字类型子字符串出错的解决方法
2017/04/01 PHP
PHP实现爬虫爬取图片代码实例
2021/03/03 PHP
基于jquery的checkbox下拉框插件代码
2010/06/25 Javascript
ajax请求get与post的区别总结
2013/11/04 Javascript
js动态控制table的tr、td增加及删除的具体实现
2014/04/30 Javascript
Nodejs实现的一个简单udp广播服务器、客户端
2014/09/25 NodeJs
轻松创建nodejs服务器(10):处理上传图片
2014/12/18 NodeJs
JS运动基础框架实例分析
2015/03/03 Javascript
AngularJs 弹出模态框(model)
2016/04/07 Javascript
解决JS组件bootstrap table分页实现过程中遇到的问题
2016/04/21 Javascript
JS+HTML5手机开发之滚动和惯性缓动实现方法分析
2016/06/12 Javascript
详解vue2.0 使用动态组件实现 Tab 标签页切换效果(vue-cli)
2017/08/30 Javascript
JS库之Particles.js中文开发手册及参数详解
2017/09/13 Javascript
Vue实现菜单切换功能
2020/11/08 Javascript
用Python的Django框架来制作一个RSS阅读器
2015/07/22 Python
Python实现多线程抓取妹子图
2015/08/08 Python
用Python编写简单的微博爬虫
2016/03/04 Python
详解Python pygame安装过程笔记
2017/06/05 Python
Python面向对象程序设计构造函数和析构函数用法分析
2019/04/12 Python
python系列 文件操作的代码
2019/10/06 Python
python中uuid模块实例浅析
2020/12/29 Python
HTML5 解决苹果手机不能自动播放音乐问题
2017/12/27 HTML / CSS
波兰购物网站:MALL.PL
2019/05/01 全球购物
实习教师自我鉴定
2013/12/09 职场文书
《尊严》教学反思
2014/02/11 职场文书
餐厅经理岗位职责和岗位目标
2014/02/13 职场文书
初级会计求职信范文
2014/02/15 职场文书
征婚广告词
2014/03/17 职场文书
班干部演讲稿
2014/04/24 职场文书
2014年公司工作总结
2014/11/22 职场文书
小学数学教学反思范文
2016/02/16 职场文书
pd.drop_duplicates删除重复行的方法实现
2022/06/16 Python