• mongoose的基本操作


    Mongoose库简而言之就是对node环境中MongoDB数据库操作的封装,通过操作javaScript对象来操作数据库,代码会显得特别清晰。

    一丶  npm install mongoose  --save    

    下载Mongoose(其中包括了mongodb,不用重复Require)

    二丶官网提供的hello模板

    var mongoose = require('mongoose');     //引入mongoose
    mongoose.connect('mongodb://localhost/test');  // 连接数据库
    
    var Cat = mongoose.model('Cat', { name: String });   // 创建一个Model模型 也就相当于创建了一个cats表
    
    var kitty = new Cat({ name: 'Zildjian' });  //实例化一个Model模型 ,相当于创建一个Kitty集合
    kitty.save(function (err) {    //save()方法,保存该对象,也就是向数据库增加;
      if (err) {
        console.log(err);
      } else {
        console.log('meow');
      }
    });
    

     三丶mongoose的具体使用

       1,连接数据库

    var mongoose = require('mongoose');
    //创建数据库连接
    var db=mongoose.createConnection('mongodb://127.0.0.1:27017/student');
    //监听open事件
    db.once('open', function (callback) {
       console.log("数据库成功连接");
    });

           2丶定义模型

    //创建了一个schema结构。
    var studentSchema = new mongoose.Schema({
        name     :  {type : String},
        age      :  {type : Number},
    });
    var studentModel = db.model('Student', studentSchema);

          3丶增

    mongooseModel.create({name:'XiaoMIng',age:'18'}, function(error){
        if(error) {
            console.log(error);
        } else {
            console.log('成功添加小明同学信息');
        }
        // 关闭数据库链接
        db.close();
    });
    

         4丶删

    mongooseModel.remove({name:'XiaoMing'}, function(error){
        if(error) {
            console.log(error);
        } else {
            console.log('成功删除小明同学信息');
    } //关闭数据库链接 db.close(); });

         5丶改

    var conditions = {name: 'XiaoMing'};
    var update     = {$set : {age : 27}};
    var options    = {};
    mongooseModel.update(conditions, update, options, function(error){
        if(error) {
            console.log(error);
        } else {
            console.log('成功修改小明的的年龄');
        }
        //关闭数据库链接
        db.close();
    });

              6丶查

    var select = {name: '小明'}; // 查询条件
    mongooseModel.find(select,function(error, result){ if(error) { console.log(error); } else { console.log(result); } //关闭数据库链接 db.close(); });

      四丶自定义静态方法

    //自定义一个通过年龄查询学生的方法
    mongooseSchema.statics.findFromage = function(age, callback) { this.model('student').find({age: age}, callback); }
    //通过年龄查询所有学生信息
    student.findFromage(
    '30',function(err,result){ console.log(result) })
  • 相关阅读:
    AdminLTE组件之表格DataTable
    爬虫:通过滑动或者点触验证码的方法及实现(点触+滑动)
    爬虫:滑动验证解决方法及python实现
    django文件上传地址以及media的设置
    基于cropper和sweetalert的简单图片/头像裁剪上传
    学写网站(二)前端配置之glup
    轩辕剑陆和外传平台版设置功能
    植物大战僵尸
    仙剑类更新
    VSCode注册关联自定义类型文件
  • 原文地址:https://www.cnblogs.com/szyblogs/p/7286247.html
Copyright © 2020-2023  润新知