八:nodeJS操作mongodb
【这里的操作都是数据库模块版本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('/');//路由跳转
})
})
页:
[1]