zoukankan      html  css  js  c++  java
  • 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) })
  • 相关阅读:
    【JAVA与C#比较】其它
    C#和java之间的一些差异与共性
    C#与Java的语法差异
    关于npm本地安装模块包(node_modules),安装不了的问题
    vue
    vue
    vue
    vue
    v
    vue -model
  • 原文地址:https://www.cnblogs.com/szyblogs/p/7286247.html
Copyright © 2011-2022 走看看