- 一、NodeJS 介绍
- 二、HTTP 模块、URL 模块 supervisor 工具
- 三、CommonJs 和 Nodejs 模块
- 四、NPM 第三方模块和 package
- 五、fs 模块
- 六、创建一个 WEB 服务器
- 七、Nodejs 的非阻塞 I/O、异步、事件驱动
- 八、静态文件托管 GET POST 路由 EJS 模板引擎
- 九、MongoDb 数据库介绍、安装、使用
- 十、MongoDB 数据库创建删除、表(集合)创建删除、数据增删改查
- 十一、MongoDB 索引 explain 分析查询速度
- 十二、nodejs 操作 mongodb3.x 数据库的方法
- 十三、NodeJs 操作 MongoDb 数据库 数据的增加 修改 删除
- 十四、Express 安装和使用
- 十五、express 中间件 cookie 的基本使用
- 十六、express 中间件 express-session 常见参数配置使用
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
十三、NodeJs 操作 MongoDb 数据库 数据的增加 修改 删除
13.1 在 Nodejs 中使用 Mongodb
前面的课程我们讲了用命令操作
MongoDB
,这里我们看下如何用nodejs
来操作数据库
需要引包
npm install mongodb --save-dev / cnpm install mongodb --save-dev
13.2 Nodejs 连接 MongoDb 数据库
var express = require("express"); //数据库引用 var MongoClient = require('mongodb').MongoClient; var app = express(); //数据库连接的地址,最后的斜杠表示数据库名字 var shujukuURL = 'mongodb://localhost:27017/news'; app.get("/", fu nction(req, res) { //连接数据库,这是一个异步的操作 MongoClient.connect(shujukuURL, function(err, db) { res.writeHe ad(200, { "Content-Type": " text/html;charset =UTF8" }); if (err) { res.send("数据库连接失 败"); return; } res.write("恭喜,数据库已经成功连接 \n"); db.collection("user").insertOne({ "name": "哈哈" }, functio n(err, result) { if (err) { res.send("数据库写入 失败"); return; } res.write("恭喜,数据 已经成功插入"); res.end(); //关闭数据库 db.close(); }); }); }); app.listen(8020);
13.3 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 }); } }); })
13.4 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') }) })
13.5 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'); }) })
13.6 Nodejs 删除 MongoDb 数据
MongoClient.connect(dbUrl, function(err, db) { if (err) { throw new Error("数据库连接失败"); return; } db.collection('user').deleteOne({ "_id": ObjectID(id) }, func tion(error, result) { if (error) { throw new Error('删除数据失败'); return; } db.close(); res.redirect('/'); /*路由跳转*/ }) })
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论