Node.js操作Mongodb

2017-04-25  本文已影响0人  杨慧莉

插入数据

//要操作的数据库的url,数据库名为test
var url='mongodb://localhost:27017/test';    
var insert_many = (db, callback)=> {
   const collection=db.collection("users");  //连接到数据库下的"users" collection
    const data=[{name:"Look",age:"45"},
        {name:"Rose",age:"27"}];
//insertMany()为操作数据库的API
    collection.insertMany(data,(err,result)=>{
        if(err){
            console.log("ERROR");
        }else{
            callback(result);
        }
    });
};

//连接数据库
MongoClient.connect(url, (err,db)=> {
    console.log("连接成功!");
    insert_many(db,(result)=>{
        console.log("成功插入多条数据");
    });
});
var url='mongodb://localhost:27017/test';  
var delete_one=(db,callback)=>{
    const collection=db.collection("users");
    collection.deleteOne({name:"Rose"},(err,result)=>{
        if(err){
            console.log("ERROR");
        }else{
            callback(result);
        }

        db.close();
    })
};

MongoClient.connect(url, (err, db)=> {
       console.log("连接成功!");
       delete_one(db,(result)=>{
           console.log(result);
       });
});

具有删除功能的API还有deleteMany,区别是:
deleteOne()只会删除查找到的第一条符合条件的数据
deleteMany()会删除所有查找到的符合条件的数据

var url='mongodb://localhost:27017/test';  
var update_one=(db,callback)=>{
    const collection=db.collection("users");
    collection.updateOne({name:"Rose"},{$set:{age:"30"}},(err,result)=>{
        if(err){
            console.log("ERROR");
        }else{
            callback(result);
        }

        db.close()
    });
};


MongoClient.connect(url,(err,db)=>{
    console.log("连接成功");
    update_one(db,(result)=>{
        console.log(result);
    });
});

具有修改功能的API还有updateMany(),区别和上边类似,updateOne()是修改一条数据,而updateMany()是修改所有数据

//查找一条数据
var url='mongodb://localhost:27017/test';  
var find_one = (db, callback)=> {
       const collection=db.collection("users");
       collection.findOne({name:"Bob"},(err,result)=>{
           if(err){
               console.log("ERROR");
           }else{
               console.log("查找成功");
               callback(result);
           }
           db.close();
       })
};
MongoClient.connect(url, (err, db)=> {
    console.log("连接成功!");
    find_one(db,(result)=>{
      console.log(result);
    });
});
//查找所有数据
const find_all=(db,callback)=>{
    const collection=db.collection("users");
    //查找 users 文档中的所有数据
    collection.find({}).toArray((err,result)=>{
        if(err){
            console.log("ERROR");
        }else{
            console.log(" callback before");
            callback(result);
            console.log("callback after");
        }
    });
};

MongoClient.connect(url,(err,db)=>{
    //连接到表 users
    console.log("连接成功!");
    find_all(db,(result)=>{
      console.log(result.length);
        for(var i=0;i<result.length;i++){
            console.log(result[i]);
        }
        db.close();
    });
});

本篇文章是Node.js操作数据库的简单用法,随后还会有补充。
更多示例请点这里

参考资料:

上一篇下一篇

猜你喜欢

热点阅读