老莫的笔记本  
  
查看: 1247|回复: 0

八:nodeJS操作mongodb

[复制链接]

664

主题

880

帖子

5155

积分

超级版主

Rank: 8Rank: 8

积分
5155
发表于 2018-4-26 11:08:21 | 显示全部楼层 |阅读模式
        【这里的操作都是数据库模块版本2.4】
        第一步安装: cnpm install mongodb --save
        第二步引用: var MongoClient = require('mongodb').MongoClient ;
        第三步地址: var shujukuURL = 'mongodb://localhost:27017/itying'     // 数据库连接地址,最后的斜杠表示数据库的名字

        第四步连接数据库:(这是一个【异步】操作);
               
                        MongoClient.connect(shujukuUrl,function(err,db){

                                if(err){         res.send('数据库连接失败') ; return        }
                               
                                res.write('数据库连接成功');

                                db.collection("user").insertOne({"name":"haha"},function(err2,result){

                                        if(err2){         res.send('数据库写入失败') ; return        }
                                       
                                        res.send('数据库写入成功');

                                }
                                       
                                db.close();  // 【关闭数据库】

                        }



                4.2 查询 :
               
                        // 查找数据库
                        MongoClient.connect(dbURL,function(err,db){
                                    if(err){ console.log(err); return ; }
                                    var result = [];  //用于存放获取到的数据
                                    var userRel = db.collection('user').find(); //获取来的数据 find(条件)

                                    // 遍历获取来的结果
                                    userRel.each(function(err22,doc){
                                        if(err22){
                                            res.write("游标遍历错误");
                                            return ;
                                        }
                                        if(doc != null){
                                            result.push(doc);
                                        }else{
                                            console.log(result);
                                            db.close();
                                            res.render("index",{
                                        "result":result
                                                            })
                                        }
                                    })


                        })

                4.3 增加数据:
                                            
                            MongoClient.connect(db.url,function(err,db){
                                if(err){ console.log(err); return;  }
                                db.collection('user').insertOne({
                                    "name":name,
                                    "age":age,
                                    "score":{
                                        "shuxue":shuxuechengji,
                                        "yuwen":yuwenchengji
                                    }
                                },function(err2,result){
                                    if(err2){ console.log(err2 + '写入数据失败'); return;  }
                                    db.close();
                                    res.redirect('/'); //路由跳转
                                    res.end();
                                })
                            })

                4.4修改数据:

                    MongoClient.connect(dbURL,function(err,db){
                        if(err){ console.log(err); return; }
                        db.collection('use').updateOne({
                            "_id":ObjectId(id)},{
                                'name':name,
                                'age':age
                        },function(err2,results){
                            if(err2){ console.log(err2); return; }
                            console.log(results);
                            db.close();
                            res.redirect('/');  //路由跳转
                            res.end('end');
                        })
                    })
                4.5删除数据:
               
                MongoClient.connect(dbURL,function(err,db){
                    if(err){ throw new Error('数据库连接失败'); return ;  }
                    db.collection('user').deleteOne({"_id":ObjectID(id)},function(err2,result){
                        if(err2){ throw new Error( ' 删除数据失败 '); return ;  }
                        db.close();
                        res.redirect('/');  //路由跳转
                    })
                })


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表