/*
1.安装数据库mongodb 在该项目文件夹下输入npm install mongodb --save即可
2. var MongoClient= require('mongodb').MongoClient;//引入MongoClient
var assert = require('assert');//用来进行模块调试的
var objectId = require('mongodb').ObjectID;//根据id进行修改数据的
var url='mongodb://127.0.0.1:27017/test';//定义连接数据库的地址
3.链接数据库
MongoClient.connect(url,function (err,db){
})
4.实现增删改查
MongoClient.connect(url,function (err,db){
//插入一条数据user为表名
db.collection('user).insert({“name":"zhangshan"},function(error,data){
}
})
*/
var http = require('http');
var ejs = require('ejs');//渲染模板
var app=require('./model/express-route');
var url=require('url');
var MongoClient= require('mongodb').MongoClient;//引入MongoClient
var dburl='mongodb://127.0.0.1:27017/itying'; //定义连接数据库的地址,启动数据库可查看,itying为数据库名称
//封装express路由======================================================
http.createServer(app).listen(8019);
//注册一个get方法,调用封装好的express-route.js中已经暴露出的app.get()方法
//数据库查询----------------------------------------数据库查询数据find()
app.get('/',function (req,res) {
MongoClient.connect(dburl,function (err,client) {
if(err){
console.log(err);
console.log('数据库链接失败');
return
}
var db=client.db("itying");
var result = db.collection('user').find({});//{}中可以是条件,拿到想要的数据,但是特别乱,需要进行遍历,找到自己想要的数据
console.log(result);
result.forEach(function (error,doc) {//通过,因为版本问题each不可用,只能用forEach对书库数据进行遍历
if(error){
console.log(error);
}else {
var list=new Array();
if(doc!=null){
list.push(doc);
}else{//doc==null表示数据循环完成
console.log(list);
client.close();
res.send(list);//通过封装好的路由进行调用
}
}
})
})
})
//数据库操作-------------------增加insertOne
app.get('/add',function (req,res) {
//增加数据,url为定义好的路径
//mongoose.connect('mongodb://user:[email protected]:port/dbname', { useNewUrlParser: true })
MongoClient.connect(dburl,function (err,client){
var db=client.db("itying");
if(err){
console.log(err);
console.log("数据库连接失败");
return
}
//user为表名
db.collection('user').insertOne({
"name":"yhttt",//插入的数据,以map形式进行追加
"age":2220
},function (error,result) {
if(error){
console.log("user表数据插入失败!!!!!!!!!");
return
}
res.send('user表数据插入成功!!!!!!!!!');
client.close();
})
})
})
//数据库操作-------------------修改updateOne
app.get('/edit',function (req,res) {
MongoClient.connect(dburl,function (err,client) {
var db=client.db("itying");
if(err){
console.log("数据库连接失败");
return
}
db.collection('user').updateOne({"name":"biak1"},{$set:{
"age":40
}},function (error,data) {
if(error){
console.log("user表数据修改失败!!!!!!!!!");
return
}
res.send('user表数据修改成功!!!!!!!!!');
client.close();
})
})
})
//数据库操作-------------------删除deleteOne
app.get('/delete',function (req,res) {
console.log(url);
//delete?name=biak1
//获取参数query.name
var query=url.parse(req.url,true).query;
var name=query.name;
MongoClient.connect(dburl,function (err,client) {
var db=client.db("itying");//获取数据名
if(err){
console.log("数据库连接失败");
return
}
db.collection('user').deleteOne({"name":name},function (error,data) {
if(error){
console.log("user表数据删除失败!!!!!!!!!");
return
}
console.log(data);
res.send('user表数据删除成功!!!!!!!!!');
client.close();
})
})
})
nodejs连接mongoDb数据库得具体操作---增删改查
猜你喜欢
转载自blog.csdn.net/sunshineboysy/article/details/88168909
今日推荐
周排行