作者:Christy-1221 | 来源:互联网 | 2023-09-01 13:48
在Nodejs中使用MongoDB需要引包:npminstallmongodb--save-devNodejs连接MongoDB数据库varexpressreq
在 Nodejs 中使用 MongoDB
需要引包:
npm install mongodb --save-dev
Nodejs 连接 MongoDB 数据库
var express = require("express");
//数据库引用
var MongoClient = require('mongodb').MongoClient;
var app = express();
//数据库连接的地址,最后的斜杠表示数据库名字
var shujukuURL = 'mongodb://localhost:27017/news';
app.get("/",
function(req, res) {//连接数据库,这是一个异步的操作MongoClient.connect(shujukuURL,function(err, db) {res.writeHead(200, {"Content-Type": "text/html;charset=UTF8"});if (err) {res.send("数据库连接失败");return;}res.write("恭喜,数据库已经成功连接 \n");db.collection("user").insertOne({"name": "哈哈"},function(err, result) {if (err) {res.send("数据库写入失败");return;}res.write("恭喜,数据已经成功插入");res.end();//关闭数据库db.close();});});
});
app.listen(8020);
Nodejs 查找 MongoDB 数据库集合
MongoClient.connect(dbUrl,
function(err, db) {if (err) {/*数据库连接失败*/console.log('数据库连接失败');return;}var result = [];var userRel = db.collection('user').find();//res.send(userRel);userRel.each(function(err, doc) {if (err) {res.write("游标遍历错误");return;}if (doc != null) {result.push(doc);} else {console.log(result);//遍历完毕db.close();res.render("index", {"result": result});}});
})
Nodejs 给 MongoDB 增加数据
MongoClient.connect(dbUrl,
function(err, db) {if (err) {return}db.collection('user').insertOne({"name": name,"age": age,"score": {"shuxue": shuxuechengji,"yuwen": yuwenchengji}},function(err, result) {if (err) {console.log('写入数据失败');}//关闭数据库db.close();//res.redirect('/add');res.redirect('/');/*路由跳转*/res.end();res.location('/add')})
})
Nodejs 修改 MongoDB 数据
MongoClient.connect(dbUrl,
function(err, db) {if (err) {console.log('数据库连接错误');return;}db.collection('user').updateOne({"_id": ObjectID(id)},{"name": name,"age": age,"score": {"shuxue": shuxue,"yuwen": yuwen}},function(err, results) {console.log(results);db.close();res.redirect('/');/*路由跳转*/res.end('end');})
})
Nodejs 删除 MongoDB 数据
MongoClient.connect(dbUrl,
function(err, db) {if (err) {throw new Error("数据库连接失败");return;}db.collection('user').deleteOne({"_id": ObjectID(id)},function(error, result) {if (error) {throw new Error('删除数据失败');return;}db.close();res.redirect('/');/*路由跳转*/})
})