美文网首页张蕾的技术博客
mongoose的增删改查(含分页)

mongoose的增删改查(含分页)

作者: cd72c1240b33 | 来源:发表于2017-06-14 22:36 被阅读317次

    首先说下,mongoose非常简单,如果你熟悉了mongodb中的shell命令,那玩起mongoose基本就是秒杀~

    1、引入mongoose

    因为mongoose里面已经导入mongoodb,所以我们不需要单独引入mongodb;

    const mongoose=require('mongoose'),
        db_url='mongodb://localhost:27017/liuyan';// liuyan是随意起的数据库名称,可以任意更改
    

    2、链接数据库

    //链接数据库
    const db=mongoose.createConnection(db_url);
    
    //测试数据库是否链接成功
    db.once('open',function () {
        console.log('数据库链接成功')
    });
    

    3、设置数据类型,即数据的schema

    var msgSchema=new mongoose.Schema({
        title:{type:String},
        content:{type:String,default:'haha'}, //default是设置默认值,可以不设置
        time:{type:Number}
    });
    

    4、 创建一个数据类,类就相当于mongodb的集合

    • 例如:如果类是Msg,那么集合就是msgs;
    var Msg=db.model('Msg',msgSchema);
    

    5、增:给数据库增加数据

    • Msg.create(json,(err,result)=>{})
    • 例如:
    Msg.create({title:'haha1',time:new Date().getTime()},function (err,result) {
        console.log('插入成功')
        console.log(result)
    });
    

    6、删:删除数据库中指定的数据

    • Msg.remove(json,(err,result)=>{});
    • 例如:
    Msg.remove({title:'haha'},(err,result)=>{
        console.log(result)
    })
    

    7、改:更改数据库中指定的数据

    • Msg.update(json1,json2,(err,result)=>{})
    • 例如:
    Msg.update({title:'haha'},{$set:{title:'leilei'}},(err,result)=>{
        console.log(result)
    })
    

    8、查:查找数据库中的数据,包含分页和排序功能

    • Msg.find(json1,(err,result)=>{}).sort(json2).limit().skip();
    Msg.find({},(err,result)=>{
        console.log(result)
    }).sort({time:1}).limit(1).skip(1)
    

    9、总数量:查询数据库中满足条件的数据条数;

    • 注意,当后台通过res.send()给前端返回数据类型的时候,可以是字符串或对象,但一定不能是数字(数字.toString()先处理下,再用send)
    • Msg.count(json,(err,result)=>{});
    Msg.count({},(err,result)=>{
            res.send(result.toString())
    });
    

    相关文章

      网友评论

      本文标题:mongoose的增删改查(含分页)

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