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 url验证(url-valid)的使用方法
Nov 18 NodeJs
NodeJS学习笔记之网络编程
Aug 03 NodeJs
nodejs教程之制作一个简单的文章发布系统
Nov 21 NodeJs
nodejs中实现sleep功能实例
Mar 24 NodeJs
nodeJs爬虫获取数据简单实现代码
Mar 29 NodeJs
浅谈Nodejs应用主文件index.js
Aug 28 NodeJs
nodejs实例解析(输出hello world)
Jan 03 NodeJs
详解IWinter 一个路由转控制器的 Nodejs 库
Nov 15 NodeJs
详解NODEJS的http实现
Jan 04 NodeJs
nodejs连接mysql数据库及基本知识点详解
Mar 20 NodeJs
NodeJS搭建HTTP服务器的实现步骤
Oct 12 NodeJs
Nodejs 数组的队列以及forEach的应用详解
Feb 25 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类
2006/10/09 PHP
dedecms采集中可以过滤多行代码的正则表达式
2007/03/17 PHP
PHP XML数据解析代码
2010/05/26 PHP
PHP中的integer类型使用分析
2010/07/27 PHP
对于ThinkPHP框架早期版本的一个SQL注入漏洞详细分析
2014/07/04 PHP
用脚本调用样式的几种方法
2006/12/09 Javascript
javascript正则表达式中参数g(全局)的作用
2010/11/11 Javascript
JQuery中绑定事件(bind())和移除事件(unbind())
2015/02/27 Javascript
jquery使用each方法遍历json格式数据实例
2015/05/18 Javascript
实例讲解jquery中mouseleave和mouseout的区别
2016/02/17 Javascript
javascript Promise简单学习使用方法小结
2016/05/17 Javascript
原生JS+Canvas实现五子棋游戏实例
2017/06/19 Javascript
详解ES6语法之可迭代协议和迭代器协议
2018/01/13 Javascript
ES6知识点整理之对象解构赋值应用示例
2019/04/17 Javascript
详解微信小程序开发聊天室—实时聊天,支持图片预览
2019/05/20 Javascript
[01:45]亚洲邀请赛互动指南虚拟物品介绍
2015/01/30 DOTA
Python实现国外赌场热门游戏Craps(双骰子)
2015/03/31 Python
python简单实现计算过期时间的方法
2015/06/09 Python
Python运维自动化之nginx配置文件对比操作示例
2018/08/29 Python
Python数据类型之Set集合实例详解
2019/05/07 Python
浅析Windows 嵌入python解释器的过程
2019/07/26 Python
python集合常见运算案例解析
2019/10/17 Python
jupyter notebook中新建cell的方法与快捷键操作
2020/04/22 Python
css3制作彩色边线3d立体按钮的示例(css3按钮)
2014/05/06 HTML / CSS
移动端html5模拟长按事件的实现方法
2018/09/30 HTML / CSS
全球最大的服务市场:Fiverr
2017/01/03 全球购物
售后服务科岗位职责范文
2013/11/13 职场文书
中文专业毕业生自荐书范文
2014/01/04 职场文书
人力资源管理系自荐信
2014/05/31 职场文书
领导班子自我剖析材料
2014/08/16 职场文书
合作协议书范文
2014/08/20 职场文书
初婚初育证明范本
2014/11/24 职场文书
行政处罚听证告知书
2015/07/01 职场文书
重阳节座谈会主持词
2015/07/03 职场文书
解决tk mapper 通用mapper的bug问题
2021/06/16 Java/Android
浅谈Python数学建模之数据导入
2021/06/23 Python