资讯专栏INFORMATION COLUMN

mongodb操作之mongoose(一)

KavenFan / 1732人阅读

摘要:更重要的是它将返回的字符串包装成了对象,这在操作时要比直接使用字符串方便许多。今天就利用的官方文档对它的标准操作进行简单的分析。

NOSQL存储作为一种与关系性数据库完全不同的存储方式,提供了灵活,大型,敏捷,可扩展的存储模式,并且在有着复杂的数据情形下性能完全
不逊色于RDBMS,而作为NOSQL中流行程度较高的数据库,mongodb有着上手容易,数据查询方式多样等诸多特点,所以也深受欢迎


今天说的mongoose是一种利用node模块对mongodb数据库进行操作的工具,它有着结构化,操作性强,可重复的优点。更重要的是它将mongodb返回的Json字符串包装成了Json对象,这在操作时要比直接使用字符串方便许多。
今天就利用mongoose的官方文档对它的标准操作进行简单的分析。

 1. 获取mongoose

var mongoose = require("mongoose");


 2 . 连接数据库

 mongoose.connect("mongodb://yourdb");

 3. 连接成功或发生error的事件触发

var db = mongoose.connection;
 db.on("error", console.error.bind(console, "connection error:"));
 //连接失败时的操作
 
 db.once("open", function(){
            //do something after connecting 
 })
 //连接成功时的操作
 

 4. 在mongoose中,所有事务都由Schema派生

 1) 定义Schema
 var kittySchema = mongoose.Schema({
     name: String
 })

 2) 将Schema转换为Model
 var Kitten = mongoose.model("Kitten", kittySchema);

 5. 所有的事务都定义为model

  var silence = new Kitten(name: "Silence");
  
  

 6. 在Schema中添加属性和方法

  kittySchema.methods.speak = function() {
    var greeting = this.name;
    ? "meow name is" + this.name
    : "i don"t have a name";
    console.log(greeting);
  }//定义方法

  var Kitten = mongoose.model("Kitten", kittySchema);

  var fluffy = new Kitten({ name: fluffy });
  fluffy.speak();//使用方法

 7. 保存数据对象(如果发生错误时会返回,且the first arg是err)

  fluffy.save(function(err, fluffy) {
      if(err) return console.error(err);
      fluffy.speak();
  });

 8. 显示所有数据对象(Kitten)

Kitten.find(function(err, Kittens) {  //Kittens是查询后得到的数据对象
    if(err) return console.error(err);
    console.log(Kittens);
})

 9. query method(举例)

  Kitten.find({ name: yourquery }, callback);
  

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/18852.html

相关文章

  • 在Node中基于MongooseMongoDB进行增删查改(CRUD)操作

    摘要:如图连接成功后,显示你的数据库,在这个节目可以对数据库进行操作。如图安装与加载首先假定你已经安装了,命令行工具输入在使用的文件中即可。创建读取更新删除单值读取上文是在中基于对进行增删查改操作的简单介绍,以后会有进阶的文章。 关键词:mongodb安装 mongoose使用 robomongo mongoose的CRUD操作 mongoose的查询,增加,修改,删除 工具介绍 Mon...

    lemon 评论0 收藏0
  • 在Node中基于MongooseMongoDB进行增删查改(CRUD)操作

    摘要:如图连接成功后,显示你的数据库,在这个节目可以对数据库进行操作。如图安装与加载首先假定你已经安装了,命令行工具输入在使用的文件中即可。创建读取更新删除单值读取上文是在中基于对进行增删查改操作的简单介绍,以后会有进阶的文章。 关键词:mongodb安装 mongoose使用 robomongo mongoose的CRUD操作 mongoose的查询,增加,修改,删除 工具介绍 Mon...

    SillyMonkey 评论0 收藏0
  • Node学习记录: mongodb

    摘要:的逻辑结构是一种层次结构,主要由文档集合数据库这三部分组成的。文档由键值对构成,像等,它是核心单元,的文档,相当于关系数据库中的一行记录。我们以此为例看它如何使用真实项目中参考学习笔记之的使用入门教程的一些操作命令 showImg(https://segmentfault.com/img/bVN45N?w=1192&h=578); 简介 在说MongoDB数据插入操作之前,我们先来简单...

    zzzmh 评论0 收藏0
  • mongoose 操作备忘

    摘要:如果不存在则创建新记录。如果值为,执行验证。如果选项为,在新建时插入文档定义的默认值。以模式进行更新。禁用模式,允许覆盖记录示例更新多个为的文档将设置为更新多条数据与相同更新一条数据设置无效查找查询条件控制返回的字段控制选项回调函数。 在使用node.js时,时常与之搭配的是mongoDB,一般我们不写原生mongo语法,一个经常使用的mongo库便是mongoose,由于个人记性比较...

    happyhuangjinjin 评论0 收藏0
  • mongodb操作mongoose(二)

    摘要:今天要说的是的方法,也就是数据更新语法参数表示查询条件表示更新内容表示更新的条件反馈函数选项值默认值默认在中进行值的设置如果没有匹配项是否创建新文件是否更新多个文件是否对此次更新重写值是否验证更新的值在建立时,设置默认插入值允许对非更新选项 今天要说的是mongoose的update方法,也就是数据更新 语法: Model.update(conditions,doc,[options]...

    wthee 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<