nodejs连接mongodb数据库实现增删改查


Posted in NodeJs onDecember 01, 2016

准备

1.通过npm命令安装mongodb

2.安装mongodb数据库,这里不详细介绍了,安装网址:https://3water.com/article/82522.htm

CRUD操作

在此之前应对MongoDB数据库有所了解,知道它的一些增删查改命令。

1.增加

var MongoClient = require("mongodb").MongoClient;
var DB_URL = "mongodb://localhost:27017/chm";

function insertData(db)
{
  var devices = db.collection('vip');
  var data = {"name":"node","age":22,"addr":"nb","addTime":new Date()};
  devices.insert(data,function(error, result){
    if(error)
    {
      console.log('Error:'+ error);
    }else{

      console.log(result.result.n);
    }
    db.close();
  });
}

 
MongoClient.connect(DB_URL, function(error, db){
  console.log('连接成功!');
  insertData(db);
});

2.查找

var mongodb = require('mongodb')
var MongoClient = require('mongodb').MongoClient;
var DB_CONN_STR = 'mongodb://localhost:27017/chm'; 

var selectData = function(db, callback) { 
 //连接到表 
 var collection = db.collection('vip');
 //查询数据
 var whereStr = {"name":'node'};
 collection.find(whereStr,function(error, cursor){
  cursor.each(function(error,doc){
    if(doc){
      //console.log(doc);
      if (doc.addTime) {
        console.log("addTime: "+doc.addTime);
      }
    }
  });

 });

}

MongoClient.connect(DB_CONN_STR, function(err, db) {
 console.log("连接成功!");
 selectData(db, function(result) {
  console.log(result);
  db.close();
 });
});

3.更新

var MongoClient = require("mongodb").MongoClient;
var DB_URL = "mongodb://localhost:27017/chm";

MongoClient.connect(DB_URL, function(error, db){
  console.log("连接成功!");
  updateData(db);
});

function updateData(db)
{
  var devices = db.collection('vip');
  var whereData = {"name":"node"}
  var updateDat = {$set: {"age":26}}; //如果不用$set,替换整条数据
  devices.update(whereData, updateDat, function(error, result){
    if (error) {
      console.log('Error:'+ error);
    }else{
      console.log(result);
    }
    db.close();
  });
}

4.删除

var MongoClient = require('mongodb').MongoClient;
var DB_URL = "mongodb://localhost:27017/chm";

MongoClient.connect(DB_URL, function(error, db){
  console.log("连接成功");
  deleteData(db);
});

function deleteData(db)
{
  var devices = db.collection('vip');
  var data = {"name":"node"};
  devices.remove(data, function(error, result){
    if (error) {
      console.log('Error:'+ error);
    }else{
      console.log(result.result.n);
    }
    db.close();
  })
}

存储过程

在mongodb中创建存储过程

所有存储过程都存放在db.system.js中,通过db.eval(“存储过程ID()”);调用存储过程。

在代码中调用:

var MongoClient = require("mongodb").MongoClient;
var DB_URL = "mongodb://localhost:27017/chm";

MongoClient.connect(DB_URL, function(error,db){
  console.log("连接成功!");
  callProcess(db)
});

function callProcess(db)
{
  db.eval("get_vip_count()",function(error, result){
    if (error) {
      console.log(error);
    }else{
      console.log("count:"+result);
    }
    db.close();
  });
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

NodeJs 相关文章推荐
用nodejs写的一个简单项目打包工具
May 11 NodeJs
NodeJS中Buffer模块详解
Jan 07 NodeJs
Nodejs的express使用教程
Nov 23 NodeJs
Nodejs从有门道无门菜鸟起飞必看教程
Jul 20 NodeJs
nodeJS删除文件方法示例
Dec 25 NodeJs
nodejs个人博客开发第七步 后台登陆
Apr 12 NodeJs
nodejs实现解析xml字符串为对象的方法示例
Mar 14 NodeJs
解决Nodejs全局安装模块后找不到命令的问题
May 15 NodeJs
Mac下通过brew安装指定版本的nodejs教程
May 17 NodeJs
Nodejs中的JWT和Session的使用
Aug 21 NodeJs
nodejs中使用archive压缩文件的实现代码
Nov 26 NodeJs
Nodejs + sequelize 实现增删改查操作
Nov 07 NodeJs
Nodejs 搭建简单的Web服务器详解及实例
Nov 30 #NodeJs
Nodejs下用submit提交表单提示cannot post错误的解决方法
Nov 21 #NodeJs
Nodejs进阶:核心模块net入门学习与实例讲解
Nov 21 #NodeJs
Nodejs进阶:基于express+multer的文件上传实例
Nov 21 #NodeJs
Nodejs进阶:如何将图片转成datauri嵌入到网页中去实例
Nov 21 #NodeJs
Nodejs下DNS缓存问题浅析
Nov 16 #NodeJs
NodeJS中的MongoDB快速入门详细教程
Nov 11 #NodeJs
You might like
php mysql Errcode: 28 终极解决方法
2009/07/01 PHP
php_screw 1.5:php加密: 安装与使用详解
2013/06/20 PHP
浅析PHP中的字符串编码转换(自动识别原编码)
2013/07/02 PHP
jQuery中的.bind()、.live()和.delegate()之间区别分析
2011/06/08 Javascript
jquery 实现表单验证功能代码(简洁)
2012/07/03 Javascript
JavaScript italics方法入门实例(把字符串显示为斜体)
2014/10/17 Javascript
JS获得选取checkbox整行数据的方法
2015/01/28 Javascript
JS获取及设置TextArea或input文本框选择文本位置的方法
2015/03/24 Javascript
JS实现点击事件统计的简单实例
2016/07/10 Javascript
浅谈jquery的html方法里包含特殊字符的处理
2016/11/30 Javascript
JS 60秒后重新发送验证码的实例讲解
2017/07/26 Javascript
微信小程序promsie.all和promise顺序执行
2017/10/27 Javascript
json数据传到前台并解析展示成列表的方法
2018/08/06 Javascript
jquery实现垂直手风琴菜单
2020/03/04 jQuery
python冒泡排序简单实现方法
2015/07/09 Python
python+selenium实现自动抢票功能实例代码
2018/11/23 Python
numpy下的flatten()函数用法详解
2019/05/27 Python
Pandas之Dropna滤除缺失数据的实现方法
2019/06/25 Python
django的分页器Paginator 从django中导入类
2019/07/25 Python
Python numpy线性代数用法实例解析
2019/11/15 Python
python使用numpy实现直方图反向投影示例
2020/01/17 Python
python脚本使用阿里云slb对恶意攻击进行封堵的实现
2021/02/04 Python
详解HTML5将footer置于页面最底部的方法(CSS+JS)
2018/10/11 HTML / CSS
CAT鞋美国官网:CAT Footwear
2017/11/27 全球购物
德国香水、化妆品和护理产品网上商店:Parfumdreams
2018/09/26 全球购物
主键(Primary Key)约束和唯一性(UNIQUE)约束的区别
2013/05/29 面试题
公司拓展活动方案
2014/02/13 职场文书
科级干部考察材料
2014/02/15 职场文书
党员个人对照检查材料思想汇报
2014/09/16 职场文书
2014年体育工作总结
2014/11/24 职场文书
小学教师师德师风自我评价
2015/03/04 职场文书
自荐信格式模板
2015/03/27 职场文书
工厂员工辞职信范文
2015/05/12 职场文书
仓库管理制度范本
2015/08/04 职场文书
医院中层管理人员培训心得体会
2016/01/11 职场文书
2016年庆“七一”主题党日活动总结
2016/04/05 职场文书