[Node.js]连接mongodb
摘要
前面介绍了node.js操作mysql以及redis的内容,这里继续学习操作mongodb的内容。
安装驱动
安装命令
cnpm install 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();
});
});
结果


查询数据
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(); }); });
结果

更新数据
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();
});
});
结果

删除数据
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的更多相关文章
- windows下安装mongodb以及node.js连接mongodb
一.MongoDB 下载 下载地址 https://www.mongodb.com/download-center#community 选择windows版下载,然后安装. 二.安装完毕后创建数据 ...
- Node.js连接MongoDB数据库
首先要启动MongoDB服务器 先找到你的mongoDb安装目录,我的如下:就在bin文件夹下创建一个data文件夹,data内包含两个空文件夹,如下: 接着回到bin文件夹处,按住shift键,右击 ...
- node.js连接MongoDB数据库,db.collection is not a function完美解决
解决方法一. mongodb数据库版本回退: 这个错误是出在mongodb的库中,在nodejs里的写法和命令行中的写法不一样,3.0的api已经更新和以前的版本不不一样,我们在npm中没指定版本号的 ...
- Node.js 连接 MongoDB数据库
安装指令:npm install mongodb var mongodb = require("mongodb");// console.log(mongodb); var Mon ...
- Node.js连接MongoDB
使用monk访问mongodb mongodb.monk都安装了依赖的前提下: 首先启动MongoDB 服务:mongod: 进入了mongodb后台管理,再通过终端创建数据库:use monk-ap ...
- 初学node.js-nodejs连接MongoDB(5)
一.吧MongoDB的驱动程序添加到Node.js中 Node.js 连接 MongoDB 连接
- Node.js向MongoDB中插入并查询数据
首先必须要保持Node.js与MongoDB保持连接 具体教程见:Node.js连接MongoDB数据库步骤 插入数据步骤如下 node项目文件如下:在routes文件夹下新建insert.js文件, ...
- Node.js和MongoDB - MongoJS入门
第一次尝试翻译外国牛人的博文,希望大家喜欢. 本文源码详见:https://github.com/njaulj/mongojs 一点都不夸大的说,近年来node.js和mongodb的确是大放异彩,在 ...
- node.js连接MySQL操作及注意事项
node.js作为服务端的js运行环境已经出现了有几年了,最近我有个朋友也在做这方面的开发,但是也是刚刚接触,遇到了很多坑.前几天他们在操作数据库的时候出现了点问题,后来我们一起看了看,其实都是nod ...
随机推荐
- 勒索软件Locky、Tesalcrypt等使用了新的工具躲避检测
勒索软件Locky.Tesalcrypt等使用了新的工具躲避检测 今天我们发现Locky勒索软件家族使用一种新的工具来躲避检测,并且可能已经感染了很多节点. 自从我们通过AutoFocus智能威胁分析 ...
- 搭建RabbitMQ集群(通用)
RabbitMQ在Erlang node(节点)上 Erlang天生具有集群特性,非常好搭建集群,每一个节点(node)上具有一个叫erlang.Cookie的东西,也是一个标识符,可以互认. 1). ...
- python的map/reduce区别
直接上列子 map: 把f(x)作用在list的每一个元素并把结果生成一个新的list” # coding=utf-8def f(x): return x * x r = map(f, [1, 2, ...
- Android 拍摄(横\竖屏)视频的懒人之路
想一想,我们聊过AudioReord,AudioTrack,MediaPlayer,那多媒体四大金刚,就剩下了MediaRecorder了(SoundPool?我这里信号不好···).其实MediaR ...
- linux下cpu物理个数、多核、超线程判断解析
在Linux体系中,供给了proc文件体系显示体系的软硬件信息.若是想懂得体系中CPU的供给商和相干设备信息,则可以经由过程/proc/cpuinfo文件获得.本文章针对该文件进行简单的总结. 基于指 ...
- Video.js 简单的使用介绍
vedio.js 是一款视频播放插件,它会自动检测浏览器对 HTML5 的支持情况,如果不支持 HTML5 则自动使用 Flash 播放器.下面来介绍下它的使用: 引用video-js.cs样式文件和 ...
- 在idea中关闭vim模式
每次在idea的文件中插入新的内容时,都需要先点击键盘上的i 进入插入模式,感觉这是vim编辑器的模式,很不习惯. 你可能是按照了vim emulation 插件, 在setting-----plug ...
- Qt_mingw搭建opencv开发环境
Qt在windows下共有2个版本:mingw和msvc.其中mingw使用gcc编译器,msvc使用微软的VC编译器.针对不同版本Qt,使用Opencv的方式也不同. 区别 msvc, 可以使用op ...
- CPU的主频
CPU的主频,即CPU内核工作的时钟频率(CPU Clock Speed).通常所说的某某CPU是多少兆赫的(MHZ),而这个多少兆赫就是“CPU的主频”.很多人认为CPU的主频就是其运行速度,其实不 ...
- mongodb spring 配置文件
在使用spring-data-mongodb中,需要配置spring文件,如下: mongodb.xml <?xml version="1.0" encoding=" ...