美文网首页
快速上手mongoose操作mongoDb数据库

快速上手mongoose操作mongoDb数据库

作者: litielongxx | 来源:发表于2019-01-29 18:28 被阅读0次

node的后台开发

node基于v8内核的让js运行的特性,让后台开发成为了可能。而mongoose让我们可以用的node的语法操作支持的数据库mongodb,从而进行数据库的curd(增删改查)操作。再借助于nosql之类的可视化软件下可以实现可视化操作。注意的是mongoose非关系型数据库,数据存储再类似json的文档而不是常见的关系型的表里面。下边简单列一下常见的基于mongoose的curd操作。


image.png

创建mongoose连接(已开启mongodb服务)

//mongoose文档
const mongoose=require('mongoose');

mongoose.connect('mongodb://localhost/test');

let db=mongoose.connection;

db.on('err',()=>{
    console.log('连接失败')
})

db.once('open',()=>{
    console.log('建立连接')
})


// 设置Schema对象形式
let movieSchema=new mongoose.Schema({
    name:String,
    id:Number,
    des:{
        type:String,
        default:'xxxxx'
    }
})

// 创建model文本
let movieData=mongoose.model('movie',movieSchema);

create新增

create可以创建数据到文档中去,如果多个的可以卸载数组里。

movieData.create([
    {
        name:'a11111',
        id:1,
    },
    {
        name:'b1111',
        id:1,
        des:'多余的描述'
    },
    {
        name:'cccc',
        id:1,
    }
],(err)=>{
    if(!err) {
        console.log('success2')
    }
})

find查询

配合skip喝sort可以完成类似翻页效果的查询,而映射注意的是隐藏显示的可以分为{xx:0,xx:1}或者"-Id xx xx"的形式。

//movieData为model文本,需要显示的写在""
movieData.find({name:'aaaa'},"name des",(err,data)=>{
     if(!err) {
        console.log(data)
     }else{
        throw err;
     }
 }).skip(0).limit(3)
//映射需要部分也可以用0隐藏1显示的方式
 movieData.find({name:'aaaa'},"-_id name preImg",(err,data)=>{
    if(err) throw err;
    res.status(200);
    res.json(data);
  }).skip(1).limit(3)

update修改

update配合set(修改当前内容),inc(增加某部分之类配合{multi:true}效果类似于updateMany。

 movieData.update({name:'aaaa'},{$set:{des:'预备删除'}},{multi:true},(err)=>{
        if(err) {
            throw err
        }else{
            console.log('更新成功')
        }
    })

remove/updateOne删除

删除又remove注意的是({})无参数必须至少带上,删除单个可以delteOne。

//删除全部
 movieData.remove({name:'这里是符合条件名字'},(err)=>{
        if(!err){
            console.log('删除成功')
        }
    })
//删除单个
 movieData.deleteOne({name:'这里是符合条件名字'},(err)=>{
        if(!err){
            console.log('删除成功')
        }
    })

相关文章

  • XDH_LESSON8

    nodejs操作mongodb数据库 NodeJs为什么要用mongoose操作mongodb直接用mongodb...

  • 快速上手mongoose操作mongoDb数据库

    node的后台开发 node基于v8内核的让js运行的特性,让后台开发成为了可能。而mongoose让我们可以用的...

  • #3 mongoose 基本使用

    mongoose连接mongodb 创建Schema和model 连接到MongoDB 实例操作 数据库的操作通常...

  • 0816

    node.js 操作mongodb数据库 nodejs 自带组件 mongodb/mongoose npm ins...

  • 学习笔记-0815-nodejs 操作mongodb数据库

    nodejs 操作mongodb数据库 黄金搭档nodejs 自带组件mongodb/mongoose mongo...

  • 干货 | Node.js有用的功能组件

    1.数据库操作 1.1 mongoose mongoose是一款Node.js便捷操作MongoDB的对象模型工具...

  • mongoose学习笔记

    快速上手 前提 安装 MongoDB 和 Node.js 本次学习的 mongoose 版本是 5.4 Mongo...

  • Mongoose

    借助Mongoose库操作MongoDB数据库,会更加简单。 #安装MongoDBwindow环境 #链接数据库、...

  • mongoose 操作MongoDB

    操作mongoDB 操作mongoDB 借助一个插件 mongoose mongoose 安装 使用mongoos...

  • mongoose模块

    mongoose mongoose是nodejs的一个第三方模块主要用于nodejs操作mongodb数据库的。 ...

网友评论

      本文标题:快速上手mongoose操作mongoDb数据库

      本文链接:https://www.haomeiwen.com/subject/xqxfsqtx.html