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实现表单checkbook获取已选择的值
Jul 21 Javascript
在javascript中执行任意html代码的方法示例解读
Dec 25 Javascript
使用jQuery和PHP实现类似360功能开关效果
Feb 12 Javascript
js验证真实姓名与身份证号是否匹配
Oct 13 Javascript
详解JavaScript操作HTML DOM的基本方式
Oct 21 Javascript
JavaScript与ActionScript3两者的同性与差异性
Sep 22 Javascript
深入浅析Vue组件开发
Nov 25 Javascript
Angular的自定义指令以及实例
Dec 26 Javascript
JavaScript数据结构之二叉树的计数算法示例
Apr 13 Javascript
微信小程序缓存过期时间的使用详情
May 12 Javascript
微信小程序request请求封装,验签代码实例
Dec 04 Javascript
在vue项目中封装echarts的步骤
Dec 25 Vue.js
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
php递归获取目录内文件(包含子目录)封装类分享
2013/12/25 PHP
PHP中的排序函数sort、asort、rsort、krsort、ksort区别分析
2014/08/18 PHP
php使用PDO从数据库表中读取数据的实现方法(必看)
2017/06/02 PHP
PHP给源代码加密的几种方法汇总(推荐)
2018/02/06 PHP
TP5(thinkPHP5)框架使用ajax实现与后台数据交互的方法小结
2020/02/10 PHP
CSS3画一个阴阳八卦图
2021/03/09 HTML / CSS
JavaScript中的Location地址对象
2008/01/16 Javascript
Javascript的数组与字典用法与遍历对象的属性技巧
2012/11/07 Javascript
JavaScript对象学习经验整理
2013/10/12 Javascript
Mac地址验证的javascript代码
2013/11/09 Javascript
关闭页面window.location事件未执行的原因及解决方法
2014/09/01 Javascript
javascript中日期函数new Date()的浏览器兼容性问题
2015/09/05 Javascript
浅析BootStrap模态框的使用(经典)
2016/04/29 Javascript
关于原生js中bind函数的简单实现
2016/08/10 Javascript
javascript垃圾收集机制的原理分析
2016/12/08 Javascript
bootstrap table表格插件之服务器端分页实例代码
2018/09/12 Javascript
KOA+egg.js集成kafka消息队列的示例
2018/11/09 Javascript
vue实现扫码功能
2020/01/17 Javascript
在Vue中创建可重用的 Transition的方法
2020/06/02 Javascript
python处理文本文件实现生成指定格式文件的方法
2014/07/31 Python
python标准算法实现数组全排列的方法
2015/03/17 Python
Python数据结构与算法之使用队列解决小猫钓鱼问题
2017/12/14 Python
详解Django 时间与时区设置问题
2019/07/23 Python
python lambda表达式在sort函数中的使用详解
2019/08/28 Python
Python实现疫情地图可视化
2021/02/05 Python
CSS3标注引用的出处和来源的方法
2020/02/25 HTML / CSS
世界上第一个创建了罩杯系统的美国内衣品牌:Maidenform
2019/03/23 全球购物
资产经营总监岗位职责
2013/12/04 职场文书
旷课检讨书大全
2014/01/21 职场文书
幼儿园招生广告
2014/03/19 职场文书
安全协议书
2014/04/23 职场文书
乡镇四风对照检查材料
2014/08/31 职场文书
初级党校心得体会
2014/09/11 职场文书
4S店收银员岗位职责
2015/04/07 职场文书
观看建国大业观后感
2015/06/01 职场文书
收入证明怎么写
2015/06/12 职场文书