谁还不知道mongoose?
Mongoose.png为了解决编写MongoDB的验证、转换和业务逻辑,mongoose(mongoose官网)应运而生。
mongoose是在node.js异步环境下对mongodb进行便捷操作的对象模型工具。它是针对mongoDB操作的一个对象模型库,封装了mongoDB对文档的、增删改查等方法
- 初始化安装
npm init -y
cnpm install mongoose -S
- 引入mongoose模块
const mongoose = require("mongoose")
- 连接的地址
相对于MongoDB,这里要在最后加上连接的数据库名。(其实做了MongoDB中两步的操作)
const url = "mongodb://127.0.0.1:27017/user";
- 连接
mongoose.connect(url,(err) => {
if(err){
console.log("连接失败");
}else{
console.log("连接成功");
}
})
-
增删改查操作
在操作之前,需要先连接或者创建表
- 创建表时,要用Schema限制字段
const Schema = mongoose.Schema; var StudentSchema = new Schema({ name:String, age:Number }) const Students = mongoose.model("students",StudentSchema)
注意:
- 这里定义的表名,不区分大小写;即使定义为大写,也会转为小写,而一旦数据库中原来创建的表名为大写,在这里要通过Node进行操作时,则会创建一个新表。
- 如果表名不是以s结尾,在数据库中会自动加上s
- 增
只有插入信息的时候,需要写构造函数
var students = new Students({ name:"lxc", age:18 }) students.save().then((result) => { console.log(result); })
- 改
Students.update({name:"lxc"},{$set:{age:28}}).then((result) => { console.log(result); })
- 查
Students.find().then((result) => { console.log(result); })
- 删
Students.remove({name:"lxc"}).then((result) => { console.log(result); })
网友评论