[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 ...
随机推荐
- EM算法理解
一.概述 概率模型有时既含有观测变量,又含有隐变量,如果概率模型的变量都是观测变量,那么给定数据,可以直接利用极大似然估计法或者贝叶斯估计法估计模型参数.但是,当模型同时又含有隐变量时,就不能简单地使 ...
- springcloud配置详解
Spring Boot的配置参考Spring Boot系列文章,这里只对Spring Cloud用到的配置解释. spring.application.name:配置应用名称,在注册中心中显示的服务注 ...
- springcloud使用使用Feign-Ribbon做负载均衡实现声明式REST调用
什么是Feign Feign是一个声明式的伪Http客户端,它使得写Http客户端变得更简单.使用Feign,只需要创建一个接口并注解.它具有可插拔的注解特性,可使用Feign 注解和JAX-RS注解 ...
- xunsearch 迅搜初探
2014年1月2日 19:34:12 [root@localhost bin]# ./php /usr/local/lamp/xunsearch/sdk/php/util/Quest.php demo ...
- MyISAM引擎和InnoDB引擎的特点
随着MySQL的不断更新,由于各存储引擎功能特性差异较大,这篇文章主要是介绍如何来选择合适的存储引擎来应对不同的业务场景,朋友们可以根据业务需求,选择合适的存储引擎.^.^ MyISAM 特性 不支持 ...
- Simple Web API Server in Golang (2)
In this challenge, I tried to implement a simple OAuth2 server basing on Simple Web API Server in [1 ...
- 【PAT】1051 Pop Sequence (25)(25 分)
Given a stack which can keep M numbers at most. Push N numbers in the order of 1, 2, 3, ..., N and p ...
- nvidia-smi 命令解读
nvidia-smi 的定义: 基于 NVIDIA Management Library (NVIDIA 管理库),实现 NVIDIA GPU 设备的管理和监控功能 主要支持 Tesla, GRID, ...
- webstorm减少内存占用
首先,按照我说的设置之后要重启才行. 在项目里找到不需要监听的文件夹右键:Mark Directory As => Cancel Exclusion 然后重启,嘿嘿,成功了!
- 按行拆分文本文件与合并文本文件---I/O流---java
背景 在进行自然语言处理的中文词性标注时 进行测试时由于测试数据文本行数较多 而且测试每次标注一行的用时稍长 如果一次将文件读进来测试机器运行时间要连续不能中断 而且 只能一台机器进行工作 于 ...