Mongoose的调研(介绍和使用)

Mongoose

最近在学习mongo,发现mongoose这个工具,就来学习一下

介绍

Mongoose是通过Node来操作MongoDB的一个模块

一般,他用来把结构化的模式应用到一个MongoDB集合,并提供了验证和自动类型转换

通过关系型数据库的思想来实现非关系型数据库

-Schema -Model => Mongoose => Mongodb -Document

新名词:

Schema:定义了数据库的文档作用,约束作用

Model:相当于collection

Docuemt:表示集合的具体文档


  • 好处

  1. 为文档创建Schema,也可以说是约束

  2. 对模型中的对象/文档进行验证,出现错误的数据不会插入

  3. 数据可以通过类型转换转换为对象模型

  4. 比mongodb驱动容易

  5. 可以使用中间件来应用业务逻辑

  • 支持的数据类型

类型作用
String定义字符串
Number定义数字
Date定义日期
Buffer定义二进制
Boolean定义布尔值
Mixed定义混合类型
ObjectId定义对象ID
Array定义数组

热度

百度指数查询mongoose显示关键词未收录

mongodb需求图谱:

mongoose位于较中心位置,使用人数应该挺多

实际使用

  //引入mongoose模块
var mongoose = require('mongoose');  
//连接mongoose数据库
mongoose.connect('mongodb://127.0.0.1:27017/TEST')
​
//监听连接状态
mongoose.connection.once('open',() => {
    console.log('数据库连接成功....')
})
mongoose.connection.once('close',() => {
    console.log('数据库断开....')
})
​
//引入Schema
var Schema = mongoose.Schema;
//创建Schema对象
var schema = new Schema({
    name:String,
    age:Number,
    gender:{
        type:String,
        default:'male'
    },
    addr:String
})
​
//通过Schema传教Model
var stuModle = mongoose.model('student',schema)
​
//添加数据
stuModle.create({
    name:"小明",
    age:"20",
    addr:"天津"   
},(err,docs)=>{
    if(!err){
    console.log('插入成功'+docs)    
    }
})

测试

Mixed 混合数据类型,可以直接定义{}来使用


Mixed类型是一种未定义的类型

赋值任意类型的数据都可以通过

对应数据类型

MongooseMongoDB
StringString
Number数值小会转化成int32,数值大对转化成Double,没发现int64
DateData
BufferBinary
BooleanBoolean
Mixed所以格式都可以
ObjectIdObjectId
ArrayArray

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值