zoukankan      html  css  js  c++  java
  • mongoose学习笔记1--基础知识1

    今天我们将学习Mongoose,什么是Mongoose呢,它于MongoDB又是什么关系呢,它可以用来做什么呢?

    MongoDB是一个开源的NoSQL数据库,相比MySQL那样的关系型数据库,它更显得轻巧、灵活,非常适合在数据规模很大、事务性不强的场合下使用。同时它也是一个对象数据库,没有表、行等概念,也没有固定的模式和结构,所有的数据以文档的形式存储(文档,就是一个关联数组式的对象,它的内部由属性组成,一个属性对应的值可能是一个数、字符串、日期、数组,甚至是一个嵌套的文档。),数据格式就是JSON。

    介绍了MongoDB,我们下面就要认识Mongoose了。

    1. Mongoose是什么?

    Mongoose是MongoDB的一个对象模型工具,是基于node-mongodb-native开发的MongoDB nodejs驱动,可以在异步的环境下执行。同时它也是针对MongoDB操作的一个对象模型库,封装了MongoDB对文档的的一些增删改查等常用方法,让NodeJS操作Mongodb数据库变得更加灵活简单。

    2. Mongoose能做什么?

    Mongoose,因为封装了对MongoDB对文档操作的常用处理方法,让NodeJS操作Mongodb数据库变得easy、easy、So easy!

    学习了上面的介绍,相信你已经对Mongoose有了初步的认识和了解,千里之行,始于足下,奔跑吧,少年!

         MongoDB是一个对象数据库,是用来存储数据的;

         Mongoose是封装了MongoDB操作的一个对象模型库,是用来操作这些数据的。

    好,下面我们就来进行操作数据的第一步吧。

    1. 安装mongoose:

    npm install mongoose

    2. 引用mongoose:

    var mongoose = require("mongoose");

    3. 使用"mongoose"连接数据库:

    var db = mongoose.connect("mongodb://user:pass@localhost:port/database");

    注:var db = mongoose.connect("mongodb://127.0.0.1:27017/test"); //这样的形式,我们要链接到mongodb数据库的默认端口127.0.0.1:27017上,test是集合名;

    4. 执行下面代码检查默认数据库test,是否可以正常连接成功?

    eg:练习

    打开数据库,创建app.js,输入以下代码;

    在node中运行node app;

    var mongoose = require("mongoose");
    var db = mongoose.connect("mongodb://127.0.0.1:27017/test");
    db.connection.on("error", function (error) {
    console.log("数据库连接失败:" + error);
    });
    db.connection.on("open", function () {
    console.log("------数据库连接成功!------");
    });
    

      

    了解集合

    首先,我们再次简单介绍一下MongoDB数据库。

    MongoDB —— 是一个对象数据库,没有表、行等概念,也没有固定的模式和结构,所有的数据以Document(以下简称文档)的形式存储(Document,就是一个关联数组式的对象,它的内部由属性组成,一个属性对应的值可能是一个数、字符串、日期、数组,甚至是一个嵌套的文档。),后面我们会学习如何创建文档并插入内容。

    在MongoDB中,多个Document可以组成Collection(以下简称集合),多个集合又可以组成数据库。

    我们想要操作MongoDB数据,那就得先要具备上面所说的包含数据的“文档”,文档又是什么意思呢,请看如下介绍。

    文档 —— 是MongoDB的核心概念,是键值对的一个有序集,在JavaScript里文档被表示成对象。同时它也是MongoDB中数据的基本单元,非常类似于关系型数据库管理系统中的行,但更具表现力。

    集合 —— 由一组文档组成,如果将MongoDB中的一个文档比喻成关系型数据库中的一行,那么一个集合就相当于一张表。

    如果我们要通过Mongoose去创建一个“集合”并对其进行增删改查,该怎么实现呢,到这里我们就要先了解Schema(数据属性模型)、Model、Entity了!

     

  • 相关阅读:
    jieba的使用
    如何用python查看自己的电脑有几个核
    NLTK实现文本切分
    nltk的安装和简单使用
    初识NLP 自然语言处理
    mysql 查询存在A表中而不存在B表中的数据
    mysql 导出数据报错: row must be in range 0-65535
    python3 re模块正则匹配字符串中的时间信息
    Python语法速查: 14. 测试与调优
    Python语法速查: 20. 线程与并发
  • 原文地址:https://www.cnblogs.com/xuange306/p/4603551.html
Copyright © 2011-2022 走看看