zoukankan      html  css  js  c++  java
  • mongoose的操作及其常用命令

    一,局部安装mongoose

    npm install mongoose -S

    二、mongoose常用命令:

    //引入mongoose模块:
    const mongoose = require('mongoose');
    
    //连接数据库:
    mongoose.connect('mongodb://127.0.0.1:27017/kinoko',(err)=>{
        if(err){
            console.log('连接失败')
        }else{
            console.log('连接成功')
        }
    
        //创建表以及字段类型:
        //创建表user
        const User = mongoose.model('user',{
            //规定user表中的字段类型:
            name:String,
            age:Number
        })
    
        //增:
        const user = new User({
            name : '阿古',
            age:19
        })
    
        const user1 = new User({
            name : '美丽',
            age:22
        })
    
        const user2 = new User({
            name : '笑笑',
            age:21
        })
    
        const user3 = new User({
            name : '刘梅',
            age:56
        })
    
       console.log(user.save())  //输出:Promise{<pending>}
       user.save().then((result)=>{
           console.log('成功的回调')
       },()=>{
           console.log('失败的回调')
       })
    
       user1.save().then((result)=>{
        console.log('成功的回调')
        },()=>{
            console.log('失败的回调')
        })
    
        user2.save().then((result)=>{
            console.log('成功的回调')
        },()=>{
            console.log('失败的回调')
        })
    
        user3.save().then((result)=>{
            console.log('成功的回调')
        },()=>{
            console.log('失败的回调')
        })
    
    //删:
    //删除指定对象:
    User.remove({name:'美丽'}).then((result)=>{ //result:是一个对象 返回值是受影响条数
        console.log(result)
    })
    
    //删除所有数据:
    User.remove({}).then((result)=>{
        console.log(result)
    })
    
    //删除指定ID
    User.findByIdAndRemove("5c8263170998c51d58e14044").then((result)=>{   //5c8263170998c51d58e14044 ID值
        console.log(result);
    })
    
    //改:
    User.update({name:'阿古'},{$set:{name:"lily"}},{multi:true}).then((result)=>{
        console.log(result);    //multi:true  表示修改多条数据
    })
    
    User.findByIdAndUpdate("5c8263170998c51d58e14046",{$set:{name:'rose'}},{multi:true}).then((result)=>{
        console.log(result);
    })
    
    //查找符合条件的所有数据:
    User.find({name:'lily'}).then((result)=>{
        console.log(result);
    })
    
    // //查询所有数据:
    User.find().then((result)=>{
        console.log(result);
    })
    
    //查询单条数据:
    User.findOne({name:'lily'}).then((result)=>{
        console.log(result);
    })
    
    //条件查询:$lt(小于)  $lte(小于等于)   $gt(大于)  $gte(大于等于)   $ne(不等于)
    User.find({'age':{'$lt':20}}).then((result)=>{
        console.log(result);
    })
    
    User.find({'age':{'$lte':20}}).then((result)=>{
        console.log(result);
    })
    
    User.find({'age':{'$gt':20}}).then((result)=>{
        console.log(result);
    })
    
    User.find({'age':{'$gte':20}}).then((result)=>{
        console.log(result);
    })
    
    User.find({'age':{'$ne':20}}).then((result)=>{
        console.log(result);
    })
    
    //$in(包含等于)       $nin(不包含 不等于)
    User.find({'age':{'$in':[18,19]}}).then((result)=>{
           console.log(result)
        })
    
        User.find({'age':{'$nin':[18,19]}}).then((result)=>{
            console.log(result)
         })
     
        $exists(判断当前关键字是否存在)
        User.find({sex:{'$exists':true}}).then((result)=>{
            console.log(result);
        })
    
    //查询指定列  如果不想要ID值  只需要设置ID = 0;
    User.find({},{name:1,_id:0}).then((result)=>{
        console.log(result);
    })
    
    //'$or'或
    User.find({'$or':[{name:'lily'},{age:19}]}).then((result)=>{
        console.log(result);
    })
    
    //$exists(判断当前关键字是否存在)
    User.find({name:{'$exists':'true'}}).then((result)=>{
        console.log(result)
    })
    
    //升序降序
    User.find().sort({age:1}).then((result)=>{
        console.log(result)
    })
    
    User.find().sort({age:-1}).then((result)=>{
        console.log(result)
    })
    
    
    //模糊查询:
    User.find({name:/l/}).then((result)=>{
        console.log(result)
    })
    
    User.find({name:/^l/}).then((result)=>{   //以l开头
        console.log(result)
    })
    
    User.find({name:/l$/}).then((result)=>{   //以l结尾
        console.log(result)
    })
    
    //skip()查询n条以后的数据
    User.find().skip(1).then((result)=>{
        console.log(result)
    })
    
    //显示n到m之间的数据 skip跳过多少条,limit显示m-n条
    User.find().skip(1).limit(3).then((result)=>{
        console.log(result);
    })
    })
  • 相关阅读:
    4天精通arcgis
    性能优化紧急回顾笔记
    linux下oracle导入dmp文件
    centos虚拟机复制后网络重启出错解决
    redhat ent 6.5 virtualbox虚拟机通过桥接方式配置主机-虚拟机的局域网
    SVN的搭建及使用(三)用TortoiseSVN修改文件,添加文件,删除文件,以及如何解决冲突,重新设置用户名和密码等
    SVN 的搭建及使用(二)VisualSVN Server建立版本库,以及VisualSVN和TortoiseSVN的使用
    SVN 的搭建及使用(一)下载和搭建SVN服务器
    Visual Studio 2008常见问题
    .net 学习路线感想(转)
  • 原文地址:https://www.cnblogs.com/kinoko-1009/p/10499663.html
Copyright © 2011-2022 走看看