MongoDB 概念

MongoDB 概念

三个概念,需要分清;从字面意思跟关系型数据库的库表有所不同,但本质上还是一样的,数据结构不一样

document 文档

相当于关系数据库的一条记录

collection 集合

多条记录、多个文档,相当于关系型数据库的表

database

多个集合,在逻辑上有所联系,相当于关系型数据库的数据库了

Mongoose 概念

也有三个概念,在MongoDB驱动的基础上,继续抽象、封装的对象模型工具;能让我们在代码层面和数据层面更容易使用、门槛比较低。

schema

看作Mongose 里面的一种 数据模式、数据定义,表的结构、表的字段(字段类型、字段长度);对表具体的定义, 对应 MongoDB 的某个 collection; 纯粹定义不具备操作数据的能力

model

数据库的相关操作,他是由 schema 发布生成对应的模型,具有一些抽象属性、行为一个数据库的操作,具有操作某张表操作能力的函数集合,函数集合的操作对象就是整个 collection(整张表),可以进行 CRUD 相关操作

entity

entity 就是 model 所创建的数据实体,他的操作也会影响到数据库;简单来讲就是某条数据,这条数据的自身不是干巴巴的数据,还集成了一些方法,改变自身。

总结MongoDB 和 Mongoose

  • MongoDB 的 document、collection、database 可以对应到 关系型数据库的 row(行数)、tabel(表)、db(数据库)
  • Mongoose 是对 MongoDB 的抽象和封装,针对数据本身还扩展些能力的函数集合;schema、model、entity 对应到 数据定义、数据的操作模型、针对到某条拥有自我修改的数据

推荐阅读更多精彩内容

  • Mongodb 配置选项 通常在mongod.conf中 配置文件 设置了配置文件后启动时以自定义的配置文件启动:...
    AkaTBS阅读 642评论 0 6
  • mongoose入门 MongoDB是一个开源的NoSQL数据库,相比MySQL那样的关系型数据库,它更显得轻巧、...
    huilegezai阅读 3,363评论 0 14
  • 1.mongodb 与 普通sql 之间的抽象类比 2.查询数据库相关命令: 显示所有数据库:show dbs ...
    bless_vi阅读 89评论 0 1
  • 最近总觉得有些喘不过气 总觉得朋友渐行渐远 觉得父母不能理解自己 或许只有在这个谁也不认识也没谁认识的小空间里才能...
    小心意w阅读 45评论 0 1
  • 莲子是个老北漂。说老,一是说漂零久,二就是指年龄大。好多不认识的人都喊她姑娘,实际上,她的姑娘都十五岁了。 为了多...
    舒之矣阅读 84评论 0 3