@Wangww0925
2019-08-07T08:02:11.000000Z
字数 7925
阅读 295
NodeJs
crud: 增(create)删(delete)改(update)查(retrieve)
更多crud操作请查看https://docs.mongodb.com/manual
var url = "mongodb://localhost:27017/数据库名";
// MongoDB 2.x 版本的写法;db 代表当前的数据库对象mongoclient.connect(url,(err,db)=>{if(err){res.send("数据库连接失败");return}console.log("数据库连接成功", db);})// MongoDB 3.x 版本的写法;client 代表当前的数据库对象mongoclient.connect(url,(err, client)=>{if(err){res.send("数据库连接失败");return}// mongodb 3.x 以上的新写法, test是数据库名var db = client.db("test")console.log("数据库连接成功", db)})
db.collection("集合名").insertOne({}, (err,result)=>{if(err){res.send("插入失败");return}console.log(result)});
node执行的文件
var express = require("express");var mongoclient = require("mongodb").MongoClient; // 数据库引用var app = express();app.get("/",(req,res)=>{var url = "mongodb://localhost:27017/test"; //创建数据库连接地址//连接数据库mongoclient.connect(url,(err, client)=>{if(err){res.send("<h1>数据库连接失败</h1>");return;}// mongodb 3.x 以上的新写法, test是数据库名var db = client.db("test");// 插入一条数据db.collection("login").insertOne({"name": "www"}, (err,result)=>{if(err){res.send("<h1>插入失败</h1>");return;}res.send("<h1>插入成功</h1>");client.close();})})})app.listen(8081);
db.collection("集合名").insertMany([{},...,{}], (err,result)=>{if(err){res.send("插入失败");return}console.log(result)});
node执行的文件
var express = require("express");var mongoclient = require("mongodb").MongoClient; // 数据库引用var app = express();app.get("/",(req,res)=>{var url = "mongodb://localhost:27017/test"; //创建数据库连接地址// 连接数据库mongoclient.connect(url,(err, client)=>{if(err){res.send("<h1>数据库连接失败</h1>");return;}// mongodb 3.x 以上的新写法, test是数据库名var db = client.db("test");// 插入多条数据db.collection("login").insertMany([{name:"a"},{name:"b"},{name:"c"}],(err,result)=>{if(err){res.send("<h1>插入失败</h1>");return;}res.send("<h1>插入成功</h1>");client.close();})})})app.listen(8081);
// doc 游标// 方法一:db.collection("集合名").find(条件,(req,doc)=>{doc.each((err,data)=>{if(err){res.send("遍历失败");return}console.log(data)})})// 方法二:var doc = db.collection("集合名").find(条件)if(doc){doc.each((err,data)=>{if(err){res.send("遍历失败");return;}console.log(data)})}
PS:当查询所有数据的时候查询条件可以不写,或者写为{}
var express = require("express");var mongoclient = require("mongodb").MongoClient; // 数据库引用var app = express();app.get("/",(req,res)=>{var url = "mongodb://localhost:27017/test"; //创建数据库连接地址// 连接数据库mongoclient.connect(url,(err, client)=>{if(err){res.send("<h1>数据库连接失败</h1>");return;}// mongodb 3.x 以上的新写法, test是数据库名var db = client.db("test");var result = [];// 列出该集合的所有文档db.collection("login").find({},(err,doc)=>{doc.each(function(err,data){if(err){res.send("<h1>遍历失败</h1>")return;}if(data != null){result.push(data);}else{res.send(result);client.close();}})})})})app.listen(8081);
var express = require("express");var mongoclient = require("mongodb").MongoClient; // 数据库引用var app = express();app.get("/",(req,res)=>{var url = "mongodb://localhost:27017/test"; //创建数据库连接地址// 连接数据库mongoclient.connect(url,(err, client)=>{if(err){res.send("<h1>数据库连接失败</h1>");return;}// mongodb 3.x 以上的新写法, test是数据库名var db = client.db("test");var result = [];// 精确匹配db.collection("login").find({name: "www"},(err,doc)=>{doc.each(function(err,data){if(err){res.send("<h1>遍历失败</h1>")return;}if(data != null){// console.log(typeof data);result.push(data);}else{res.send(result);client.close();}})})})})app.listen(8081);
var express = require("express");var mongoclient = require("mongodb").MongoClient; // 数据库引用var app = express();app.get("/",(req,res)=>{var url = "mongodb://localhost:27017/test"; //创建数据库连接地址// 连接数据库mongoclient.connect(url, (err, client)=>{if(err){res.send("<h1>数据库连接失败</h1>");return;}// mongodb 3.x 以上的新写法, test是数据库名var db = client.db("test");var result = [];// 方法一:db.collection("login").find({"age":{$gt: 50}}, (err,doc)=>{doc.each(function(err,data){if(err){res.send("<h1>遍历失败</h1>")return;}if(data != null){// console.log(typeof data);result.push(data);}else{res.send(result);client.close();}})})// 方法二:// var doc = db.collection("login").find({"age":{$gt: 25}});// if(doc){// doc.each((err,data)=>{// if(err){// res.send("<h1>遍历失败</h1>");// return;// }// if(data != null){// result.push(data);// }else{// res.send(result);// client.close()// }// })// }})})app.listen(8081);
db.collection("集合名").update(find_obj, new_obj, function(err,result){if(err){res.send("<h1>修改失败</h1>");return;}console.log("修改成功");})
PS: 如果不指定修改多条数据{multi: true},则只修改第一条数据
var express = require("express");var mongoclient = require("mongodb").MongoClient; // 数据库引用var app = express();app.get("/",(req,res)=>{var url = "mongodb://localhost:27017/test"; //创建数据库连接地址// 连接数据库mongoclient.connect(url,(err, client)=>{if(err){res.send("<h1>数据库连接失败</h1>");return;}// mongodb 3.x 以上的新写法, test是数据库名var db = client.db("test");// 更改所有匹配项目// 只修改一条数据db.collection("login").update({"name":"c"},{$set:{"age": 10}}, function(err,result){if(err){res.send("<h1>修改失败</h1>");return;}res.send("修改成功");client.close();})// 修改全部// db.collection("login").update({"name":"c"},{$set:{"age": 80}}, {"multi":true},function(err,result){// if(err){// res.send("<h1>修改失败</h1>");// return;// }// res.send("修改成功");// client.close();// })})})app.listen(8081);
var express = require("express");var mongoclient = require("mongodb").MongoClient; // 数据库引用var app = express();app.get("/",(req,res)=>{var url = "mongodb://localhost:27017/test"; //创建数据库连接地址// 连接数据库mongoclient.connect(url,(err, client)=>{if(err){res.send("<h1>数据库连接失败</h1>");return;}// mongodb 3.x 以上的新写法, test是数据库名var db = client.db("test");// 完整替换,不出现$set关键字了db.collection("login").update({"name":"c"},{"age": 10}, function(err,result){if(err){res.send("<h1>修改失败</h1>");return;}res.send("修改成功");client.close();})})})app.listen(8081);
db.collection("集合名").remove(obj, function(err,result){if(err){res.send("删除失败");return;}if(result.result.n <= 0){res.send("<h1>删除失败</h1>");return;}console.log(result)})
var express = require("express");var mongoclient = require("mongodb").MongoClient; // 数据库引用var app = express();app.get("/",(req,res)=>{var url = "mongodb://localhost:27017/test"; //创建数据库连接地址// 连接数据库mongoclient.connect(url,(err, client)=>{if(err){res.send("<h1>数据库连接失败</h1>");return;}// mongodb 3.x 以上的新写法, test是数据库名var db = client.db("test");// 只要匹配成功,就会删除db.collection("login").remove({name: "a"},function(err,result){if(err){res.send("删除失败");return;}// console.log(result)if(result.result.n <= 0){res.send("<h1>删除失败</h1>");return;}res.send("<h1>删除成功</h1>");client.close();})})})app.listen(8081);
var express = require("express");var mongoclient = require("mongodb").MongoClient; // 数据库引用var app = express();app.get("/",(req,res)=>{var url = "mongodb://localhost:27017/test"; //创建数据库连接地址// 连接数据库mongoclient.connect(url,(err, client)=>{if(err){res.send("<h1>数据库连接失败</h1>");return;}// mongodb 3.x 以上的新写法, test是数据库名var db = client.db("test");// 删除全部db.collection("login").remove({},function(err,result){if(err){res.send("删除失败");return;}if(result.result.n <= 0){res.send("<h1>删除失败</h1>");return;}res.send("<h1>删除成功</h1>");client.close();})})})app.listen(8081);
作者 wendy
2019 年 2月 1日