您的位置:首页 > 数据库 > Mongodb

nodejs对mongodb数据库的增删改查操作

2016-07-15 17:23 549 查看
转自:http://jm1999.iteye.com/blog/2026227

首先要确保mongodb的正确安装,安装参照:

http://docs.mongodb.org/manual/tutorial/install-mongodb-on-debian-or-ubuntu-linux

然后下载nodejs的mongodb的driver

npm install mongodb

编写一个测试的程序:

1 var mongodb = require('mongodb');
2 var server = new mongodb.Server('localhost',27017,{auto_reconnect:true});
3 var db = new mongodb.Db('mydb',server,{safe:true});
4 db.open(function(err,db){
5     if(!err)
6     {
7         console.log('connect');
8     }else{
9         console.log(err);
10     }
11
12 });


如果最终显示connect则说明成功。

对mongodb的collection的操作

有两种方法链接collection,分别为:

db.collection(‘mycoll’,function(err,coll){});

db.createCollection(‘mycoll’,function(err,coll){});

这两种方法还有第二个可选参数{safe:true},这个参数的作用对于第一种方法,如果加上了这个参数,那么当collection不存在的时候则报错,对于第二种方法,则当collection存在的时候报错

示例:

1 var mongodb = require('mongodb');
2 var server = new mongodb.Server('localhost',27017,{auto_reconnect:true});
3 var db = new mongodb.Db('mydb',server,{safe:true});
4 db.open(function(err,db){
5     if(!err)
6     {
7       console.log('connect');
8       db.collection('mycoll',{safe:true},function(err,collection){
9           if(err){
10               console.log(err);
11           }
12       });
13
14     }else{
15         console.log(err);
16     }
17
18 });


示例:

1 var mongodb = require('mongodb');
2 var server = new mongodb.Server('localhost',27017,{auto_reconnect:true});
3 var db = new mongodb.Db('mydb',server,{safe:true});
4 db.open(function(err,db){
5     if(!err)
6     {
7       console.log('connect');
8       db.createCollection('mycoll',{safe:true},function(err,collection){
9           if(err){
10               console.log(err);
11           }
12       });
13
14     }else{
15         console.log(err);
16     }
17
18 });


删除collection则使用dropCollection函数即可

示例:

1 var mongodb = require('mongodb');
2 var server = new mongodb.Server('localhost',27017,{auto_reconnect:true});
3 var db = new mongodb.Db('mydb',server,{safe:true});
4 db.open(function(err,db){
5     if(!err)
6     {
7       console.log('connect');
8       db.dropCollection('mycoll',{safe:true},function(err,result){
9          console.log(result);
10       });
11
12     }else{
13         console.log(err);
14     }
15 });


对collection进行增删改查

(1)向collection添加数据使用insert函数

示例:

1 var mongodb = require('mongodb');
2 var server = new mongodb.Server('localhost',27017,{auto_reconnect:true});
3 var db = new mongodb.Db('mydb',server,{safe:true});
4 db.open(function(err,db){
5     if(!err)
6     {
7       db.collection('mycoll',{safe:true},function(err,collection){
8           var tmp1 = {title:'hello',number:1};
9           collection.insert(tmp1,{safe:true},function(err,result){
10               console.log(result);
11           });
12     });
13     }else{
14         console.log(err);
15     }
16
17 });


(2)对数据进行更新:

示例:

1 var mongodb = require('mongodb');
2 var server = new mongodb.Server('localhost',27017,{auto_reconnect:true});
3 var db = new mongodb.Db('mydb',server,{safe:true});
4 db.open(function(err,db){
5     if(!err)
6     {
7       db.collection('mycoll',{safe:true},function(err,collection){
8           collection.update({title:'hello'},{$set:{number:3}},{safe:true},function(err,result){
9               console.log(result);
10           });
11
12     }else{
13         console.log(err);
14     }
15
16 });
17


(3)对数据进行删除使用remove函数

示例:

1 var mongodb = require('mongodb');
2 var server = new mongodb.Server('localhost',27017,{auto_reconnect:true});
3 var db = new mongodb.Db('mydb',server,{safe:true});
4 db.open(function(err,db){
5     if(!err)
6     {
7       db.collection('mycoll',{safe:true},function(err,collection){
8           collection.remove({title:'hello'},{safe:true},function(err,result){
9               console.log(result);
10           });
11
12     }else{
13         console.log(err);
14     }
15
16 });


如果remove没有任何的参数,则删除全部。

(4)查找操作,查找操作有两个方法一个是find,一个是findOne

示例:

1 var mongodb = require('mongodb');
2 var server = new mongodb.Server('localhost',27017,{auto_reconnect:true});
3 var db = new mongodb.Db('mydb',server,{safe:true});
4 db.open(function(err,db){
5     if(!err)
6     {
7       db.collection('mycoll',{safe:true},function(err,collection){
8           var tmp1 = {title:'hello'};
9           var tmp2 = {title:'world'};
10           collection.insert([tmp1,tmp2],{safe:true},function(err,result){
11               console.log(result);
12           });
13           collection.find({type:"food",price:
{$lt:10}})).toArray(function(err,docs){
14               console.log('find');
15               console.log(docs);
16           });
17           collection.findOne(function(err,doc){
18               console.log('findOne');
19               console.log(doc);
20           });
21       });
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mongodb nodejs