Node.js连接mongodb实例代码


Posted in Javascript onJune 06, 2017

前面介绍了node.js操作mysql以及redis的内容,这里继续学习操作mongodb的内容。

安装驱动

安装命令

cnpm install mongodb

安装成功

Node.js连接mongodb实例代码

数据库操作

因为mongodb是文档类型的数据库,与mysql有很大不同,mongodb会自动创建数据库和集合,并不需要提前进行手动创建。

Insert

var MongoClient = require("mongodb").MongoClient;
var DB_CONN_STR = "mongodb://sa:sa@localhost:27017/test_db";
var insertData = function (db, callback) {
  //连接数据表my_firsrt_collection
  var collection = db.collection("my_firsrt_collection");
  var data = [{ "name": "wolfy1", "age": 20 }, { "name": "wolfy2", "age": 20 }]
  collection.insert(data, 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("连接成功");
    insertData(db,function(result){
      console.log(result);
      db.close();
    });
  });

结果

Node.js连接mongodb实例代码

Node.js连接mongodb实例代码

查询数据

var MongoClient = require("mongodb").MongoClient;
var DB_CONN_STR = "mongodb://sa:sa@localhost:27017/test_db";
 //查询 var queryData = function (db, callback) { //连接数据表my_firsrt_collection 
var collection = db.collection("my_firsrt_collection"); //查询条件 var where = { "name": "wolfy1" };
 collection.find(where).toArray(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("连接成功");
 queryData(db, function (result) { console.log(result); db.close(); }); });

结果

Node.js连接mongodb实例代码

更新数据

var MongoClient = require("mongodb").MongoClient;
var DB_CONN_STR = "mongodb://sa:sa@localhost:27017/test_db";
//查询
var updateData = function (db, callback) {
  //连接数据表my_firsrt_collection
  var collection = db.collection("my_firsrt_collection");
  //查询条件
  var where = { "name": "wolfy1" };
  var updateStr={$set:{"address":"http://www.cnblogs.com/wolf-sun/"}};
  collection.update(where,updateStr,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("连接成功");
  updateData(db, function (result) {
    console.log(result);
    db.close();
  });
});

结果

Node.js连接mongodb实例代码

删除数据

var MongoClient = require("mongodb").MongoClient;
var DB_CONN_STR = "mongodb://sa:sa@localhost:27017/test_db";
//删除
var deleteData = function (db, callback) {
  //连接数据表my_firsrt_collection
  var collection = db.collection("my_firsrt_collection");
  //查询条件
  var where = { "name": "wolfy1" };
  collection.remove(where, 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("连接成功");
  deleteData(db, function (result) {
    console.log(result);
    db.close();
  });
});

结果

Node.js连接mongodb实例代码

总结

到这里就简单实现了node.js操作mongodb的实例。希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
用一段js程序来实现动画功能
Mar 06 Javascript
指定js可访问其它域名的cookie的方法
Sep 18 Javascript
用JS提交参数创建form表单在FireFox中遇到的问题
Jan 16 Javascript
原生js实现fadein 和 fadeout淡入淡出效果
Jun 05 Javascript
js 模式窗口(模式对话框和非模式对话框)的使用介绍
Jul 17 Javascript
js和jQuery设置Opacity半透明 兼容IE6
May 24 Javascript
AngularJS入门教程之过滤器详解
Aug 19 Javascript
将form表单通过ajax实现无刷新提交的简单实例
Oct 12 Javascript
自定义require函数让浏览器按需加载Js文件
Nov 24 Javascript
详解Vue.js中.native修饰符
Apr 24 Javascript
JavaScript中click和onclick本质区别与用法分析
Jun 07 Javascript
js删除数组中某几项的方法总结
Jan 16 Javascript
jquery实现图片放大点击切换
Jun 06 #jQuery
AngularJS 验证码60秒倒计时功能的实现
Jun 05 #Javascript
AngularJS 支付倒计时功能实现思路
Jun 05 #Javascript
解决bootstrap中使用modal加载kindeditor时弹出层文本框不能输入的问题
Jun 05 #Javascript
Vue2.0实现购物车功能
Jun 05 #Javascript
bootstrap multiselect 多选功能实现方法
Jun 05 #Javascript
JavaScript实现获取用户单击body中所有A标签内容的方法
Jun 05 #Javascript
You might like
php简单开启gzip压缩方法(zlib.output_compression)
2013/04/13 PHP
浅析Yii2 gridview实现批量删除教程
2016/04/22 PHP
js获取GridView中行数据的两种方法 分享
2013/07/13 Javascript
jquery使用animate方法实现控制元素移动
2015/03/27 Javascript
AspNet中使用JQuery上传插件Uploadify详解
2015/05/20 Javascript
JS使用eval()动态创建变量的方法
2016/06/03 Javascript
JS实现的自定义显示加载等待图片插件(loading.gif)
2016/06/17 Javascript
Bootstrap编写一个同时适用于PC、平板、手机的登陆页面
2016/06/30 Javascript
js中获取jsp表单中radio类型的值简单实例
2016/08/15 Javascript
AngularJS 作用域详解及示例代码
2016/08/17 Javascript
微信小程序 生命周期详解
2016/10/12 Javascript
利用jquery实现下拉框的禁用与启用
2016/12/07 Javascript
js将字符串中的每一个单词的首字母变为大写其余均为小写
2017/01/05 Javascript
微信小程序 动态传参实例详解
2017/04/27 Javascript
jQuery实现拼图小游戏(实例讲解)
2017/07/24 jQuery
AngularJs 禁止模板缓存的方法
2017/11/28 Javascript
AngularJS实现的base64编码与解码功能示例
2018/05/17 Javascript
react 中父组件与子组件双向绑定问题
2019/05/20 Javascript
浅谈Vue中render中的h箭头函数
2019/11/07 Javascript
Vue的双向数据绑定实现原理解析
2020/02/17 Javascript
Python Web框架Flask信号机制(signals)介绍
2015/01/01 Python
Windows中安装使用Virtualenv来创建独立Python环境
2016/05/31 Python
python定间隔取点(np.linspace)的实现
2019/11/27 Python
CSS3 文字动画效果
2020/11/12 HTML / CSS
匈牙利最大的健身制造商和销售商:inSPORTline
2018/10/30 全球购物
毕业生个人求职信范例分享
2013/12/17 职场文书
幼儿园中班新学期寄语
2014/01/18 职场文书
生产部岗位职责范文
2014/02/07 职场文书
教师群众路线学习心得体会
2014/11/04 职场文书
金秋助学感谢信
2015/01/21 职场文书
2015年信贷员工作总结
2015/04/28 职场文书
铁人纪念馆观后感
2015/06/16 职场文书
《坐井观天》教学反思
2016/02/18 职场文书
python 实现定时任务的四种方式
2021/04/01 Python
Redis中有序集合的内部实现方式的详细介绍
2022/03/16 Redis
Python Pygame实战之塔防游戏的实现
2022/03/17 Python