1----mongodb 的使用
2-----node.js连接mongodb
1、使用数据库之前一定要安装
安装要求:
1、最好安装在主目录下,需要时英文名字
2、安装完以后需要配置环境变量
3、安装的时候,直接下一步下一步即可
打开数据库
1、新建一个数据文件,一定要是英文。最好放置在主目录下
2、打开数据库 mongod --dbpath 数据文件地址
使用数据库
使用数据库的时候,需要重新打开一个命令行。之前打开数据库的命令行不能关闭
使用之前首先需要执行mongo执行
执行完以后,才可以对数据库进行增删改查操作
非关系型数据库,只有文档和集合的概念。
show dbs显示所有的数据
use 数据库名字 使用指定数据库
如果想要新增一个数据库,需要use以后再新增一条数据,这样数据库才可以创建成功
db.集合.insert({k:v,k:v}) 插入数据
db 查找当前所在的是哪一个数据库
db.集合.find()查找数据 可以限制条件
multi:true可以修改多个
db.集合.update({k:v},{$set:{k:v}},{multi:true})
db.dropDatabase()删除数据库 使用命令行删除的时候,需要特别小心,没有提示
express连接数据库
1、下载mongodb npm i mongodb --save
2、引入
2-----node.js连接mongodb
const express =require('express');
const app=express();
// 引入数据库
const MongoClient=require('mongodb').MongoClient;
// 数据库地址
let url="mongodb://localhost:27017"
app.use('/',express.static('./www/login'))
// use可以处理get和post请求
app.use('/login',(req,res)=>{
// 连接数据库
MongoClient.connect(url,function(err,db){
if(err) throw err;
// db代表的是连接成功的数据文件
// var obj={user:req.query.user,pass:req.query.pass}
var obj={user:req.query.user,pass:req.query.pass}
if(!(obj instanceof Array)){
obj=[obj]
}
// 插入数据的指令 db.db('数据库名字').collection('集合名字')
db.db('user').collection('buyer').insertMany(obj,(err,result)=>{
if(err) throw err;
console.log('插入数据成功');
// 操作完毕,一般需要关闭数据文件
db.close();
// result返回的是插入成功的数据
res.send(result);
})
})
})
app.use('/find',(req,res)=>{
// 连接数据库
MongoClient.connect(url,function(err,db){
if(err) throw err;
let whereStr={user:'zs'}
// db代表的是连接成功的数据文件
db.db('user').collection("buyer").find(whereStr).limit(4).toArray(function(err, result) {
if (err) throw err;
console.log(result);
db.close();
res.send(result)
});
})
})
app.use('/del',(req,res)=>{
// 连接数据库
MongoClient.connect(url,function(err,db){
if(err) throw err;
var whereStr = {"user":'zs'}; // 查询条件
db.db('user').collection("buyer").deleteMany(whereStr, function(err, obj) {
if (err) throw err;
console.log("文档删除成功");
db.close();
res.send(obj)
});
})
})
app.use('/edit',(req,res)=>{
// 连接数据库
MongoClient.connect(url,function(err,db){
if(err) throw err;
var dbo = db.db("user");
var whereStr = {"user":'zs'}; // 查询条件
var updateStr = {$set: { "user" : "xxxx" }};
dbo.collection("buyer").updateOne(whereStr, updateStr, function(err, res1) {
if (err) throw err;
console.log("文档更新成功");
db.close();
res.send(res1);
});
})
})
app.listen('8989');