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 对应到 数据定义、数据的操作模型、针对到某条拥有自我修改的数据
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容