美文网首页我爱编程
XDL_NO.8 Node.js 操作MongoDB数据库

XDL_NO.8 Node.js 操作MongoDB数据库

作者: Junting | 来源:发表于2016-08-16 09:03 被阅读74次

    Node.js 操作MongoDB数据库

    安装组件

    • mongodb Node.js 官方对MongoDB的驱动
    • mongoose Mongoose就是一套操作MongoDB数据库的接口.
      这里我们采用mongoose 来对MongoDB数据库进行操作

    ****安装 Mongoose ,需要建立在已经安装了node.js和mongodb的基础上:

     $ npm install mongodb [--save (将该模块的详细信息记录到package.json文件里,为了项目合并时,所需模块,不需要进行模块包的合并,使用 npm install package.json 里的所又模块都会安装)]
     $ npm install mongoose 
    

    mongoose 实现对数据库的连接

    六脉神剑

    1. 引入mongoose组件 require('mongoose');
    2. 创建 连接数据库
    3. 设置数据基础模型
    4. 设置你要操作的集合(表)
    5. 设置你操作的内容
    6. 执行操作

    mongoose 对mongodb 的增删改查操作

    添加

    // 1. 引入mongoose模块
    var mongoose = require('mongoose');
    // 2. 连接数据库
    var db = mongoose.createConnection('mongoose://192.168.1.9:27017','test_db');
    db.on('err',console.error.bind(console,'连接错误');
    db.once('open',function(
      // 3. 设置基础数据模型
      var mgSchema = new mongoose.Schema({
        name:{type:String,default:'Tw'},
        age:{type:Number},
        sex:{type:String,default:'男'}
      });
      // 4. 设置你要操作的集合(表),并且设置集合的基础数据模型(表结构)
      var mgModel = db.model('user',mgSchema);
      // 5. 设置你要操作的内容
      var content = {name:'name1',age:18,sex:'男'};
    //   6. 执行操作
      var mgInsert = new mgModel(content);
      mgInsert.save(function(err){
        if(err){
          console.log(err);
        }else{
          console.log('插入成功');
        }
        db.close();          // 连接数据库关闭
      });
    ));
    

    修改

    // 1. 引入mongoose模块
    var mongoose = require('mongoose');
    // 2. 连接数据库
    var db = mongoose.createConnection('mongoose://192.168.1.9:27017','test_db');
    db.on('err',console.error.bind(console,'连接错误');
    db.once('open',function(
      // 3. 设置基础数据模型
      var mgSchema = new mongoose.Schema({
        name:{type:String,default:'Tw'},
        age:{type:Number},
        sex:{type:String,default:'男'}
      });
      // 4. 设置你要操作的集合(表),并且设置集合的基础数据模型(表结构)
      var mgModel = db.model('user',mgSchema);
      // 5. 设置你要操作的内容
      var content = {name:'name1'}; // 修改条件
      var upInfo  = {$set:{name:'tw',age:18}};
    //   6. 执行操作
      var mgInsert = new mgModel(content);
      mgInsert.update(content,mgInfo,function(err,result){
        if(err){
          console.log(err);
        }else{
          console.log(result);
        }
        db.close();          // 连接数据库关闭
      });
    ));
    

    删除

    // 1. 引入mongoose模块
    var mongoose = require('mongoose');
    // 2. 连接数据库
    var db = mongoose.createConnection('mongoose://192.168.1.9:27017','test_db');
    db.on('err',console.error.bind(console,'连接错误');
    db.once('open',function(
      // 3. 设置基础数据模型
      var mgSchema = new mongoose.Schema({
        name:{type:String,default:'Tw'},
        age:{type:Number},
        sex:{type:String,default:'男'}
      });
      // 4. 设置你要操作的集合(表),并且设置集合的基础数据模型(表结构)
      var mgModel = db.model('user',mgSchema);
      // 5. 设置你要操作的内容
      var content = {name:'name1'}; // 修改条件
    
    //   6. 执行操作
      var mgInsert = new mgModel(content);
      mgInsert.remove(content,function(err,result){
        if(err){
          console.log(err);
        }else{
          console.log(result);
        }
        db.close();          // 连接数据库关闭
      });
    ));
    

    查询

    // 1. 引入mongoose模块
    var mongoose = require('mongoose');
    // 2. 连接数据库
    var db = mongoose.createConnection('mongoose://192.168.1.9:27017','test_db');
    db.on('err',console.error.bind(console,'连接错误');
    db.once('open',function(
      // 3. 设置基础数据模型
      var mgSchema = new mongoose.Schema({
        name:{type:String,default:'Tw'},
        age:{type:Number},
        sex:{type:String,default:'男'}
      });
      // 4. 设置你要操作的集合(表),并且设置集合的基础数据模型(表结构)
      var mgModel = db.model('user',mgSchema);
      // 5. 设置你要操作的内容
      var content = {name:'tw'}; // 修改条件
      var field = {name:1,age:1,sex:1}; // 定义查询的 键(字段)
    //   6. 执行操作
      var mgInsert = new mgModel(content);
      mgInsert.remove(content,field,function(err,result){
        if(err){
          console.log(err);
        }else{
          console.log(result);
        }
        db.close();          // 连接数据库关闭
      });
    ));

    相关文章

      网友评论

        本文标题:XDL_NO.8 Node.js 操作MongoDB数据库

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