安装
下载官网(社区版):Download MongoDB Community Server | MongoDB
根据自己的操作系统下载即可
配置环境变量(方便后续的启动)
找到系统环境变量的编辑界面
添加自己下载好的mongodb的bin路径即可
最后进行测试,输入mongod,没有报错说明配置成功(这个命令主要用来启动mongodb)
启动mongo服务
在启动之前必须配置mongo服务数据存放的文件夹,比如我在mongo安装的目录下,新建了一个db文件夹,用来存放数据库内容:D:\Database\MongoDB\db,
启动方法
mongod --dbpath D:\Database\MongoDB\db
启动后不能关闭终端,不然会中断mongo的服务
node连接mongoDB
这里用express框架进行演示
1. 模块下载
npm i mongoose
2. 连接
建议放在单独的一个文件中,方便管理
const mongoose = require('mongoose');
const dbURL = 'mongodb://127.0.0.1:27017/managerCool';
// 连接数据库
mongoose.connect(dbURL);
// 绑定数据库连接监听
mongoose.connection.on("open", (err) => {
if (err) {
cosnole.log("连接失败...", err);
} else {
console.log("mongodb连接成功");
}
})
在入口文件中进行引入即可
// 连接数据库
require('../connect_db/mongo')
3. 创建模型(需要连接的表)
上述步骤已经成功连接到了具体的数据库了,而大家都知道库中是不是有具体的表,这是mysql的称呼,在mongodb中称为模型,建议将所有的创建模型的文件单独存放到一个文件夹中
比如我要连接introduction的模型
const mongoose = require('mongoose')
const IntroductionType = {
title:String,
value:String
}
const IntroductionModel = mongoose.model('introduction', new mongoose.Schema(IntroductionType))
module.exports = IntroductionModel
查询
比如我要查询introduction中的所有内容
const IntroductionModel = require('../model/IntroductionModel')
router.get('/', function (req, res, next) {
IntroductionModel.find().then(data=>{
console.log(data)
})
res.send({
ok: 1
})
});
修改
注意updateOne里面的第二个字段,对应的是new mongoose.Schema(IntroductionType))里面的字段,如果不对应的话是无法修改的哦
router.post('/api/change/homeData/:id', (req, res)=>{
IntroductionModel.updateOne({_id: req.body._id},{
title: req.body.title,
value: req.body.value
}).then(result=>{
console.log(result)
res.send({ok:1})
}).catch(err=>{
console.log(err)
res.send({ok:0})
})
})