mongoose操作(旧版)

mongoose的使用

简介

是一个对文档模型(ODM)库,他对Node原生的mongoDB模块进行了进一步的优化封装,并提供了更多的功能.

优势

  • 比Node远程的MongoDB驱动更容易

初始化

npm init -y
npm install uniq mongoose
let mongoose = require("mongoose")
// 1.连接数据库
/*一旦运行持续报保持连接, test就是数据库 如果没有自动创建*/
mongoose.connect('mongodb://localhost:27017/test',{
   useNewUrlParser:true, // 使用新的URL解析器,用于解决一些安全性问题
   useUnifiedTopology:true //统一拓扑结构
})
// 绑定数据库连接的监听
mongoose.connection.on('open',function(err){
 if(err){
    console.log("数据库连接失败",err)
} else{
    console.log("数据库连接成功")
// 操作数据库
    let Schema = mogoose.Schema
}
})

mongoose创建模型

创建模型

// 进入模式对象
let Schema =  mongoose.Schema;
// 创建约束对象
let studentsRule = new Schema({
   className:{
       type:String,
       required:true, // 是否必填
       unique:true, // 是否唯一(不可重复)
       default:"xxx" // 默认值
  },
   hobby:[String], // 限制类型只能维数组,数组中每一项必须为字符串
   info:Schema.Types.Mixed, // 接受所有类型
})
/*
备注: type表示字段的类型可以是 String Number Booler Date等
*/
// 创建模型对象
// 用于生成某个集合所对应的模型对象
let stuModel = mongoose.model('students',studentsRule)

增加

stuModel.create({
   className:"3班",
   hobby:['爱好'],
   info:"基本信息"
},(err,data)=>{
   if(err){console.log(err)}
   else{console.log(data)}
})

查询

/*
fiund方法
返回一个数组
查询为空返回空数组
*/
stuModel.find({className:'3班'},(err,data)=>{
   if(err){console.log(err)}
   else{console.log(data)}
})
/*
findOne方法
返回一个对象
查询为空返回 null
*/
stuModel.findOne({className:'3班'},(err,data)=>{
   if(err){console.log(err)}
   else{console.log(data)}
})

更新

/*
updateMany方法 更新多匹配的内容
updateOne方法 更新一个匹配的内容
*/
stuModel.updateMany({className:'3班'},(err,data)=>{
   if(err){console.log(err)}
   else{console.log(data)}
})

删除

/*
deleteMany 方法 删除多个匹配项
delleOne 方法 删除一个匹配项
*/
stuModel.deleteMany({className:'3班'},(err,data)=>{
   if(err){console.log(err)}
   else{console.log(data)}
})

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇