欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > IT业 > 【后端】ORM / ODM

【后端】ORM / ODM

2025/4/9 12:41:23 来源:https://blog.csdn.net/qq_41775119/article/details/147014025  浏览:    关键词:【后端】ORM / ODM

长期不定期更新,建议关注收藏点赞。


概述

  • ORM(Object-Relational Mapping,对象关系映射):面向关系型数据库,ORM将对象映射到数据库的表和行(例如MySQL、PostgreSQL)。
  • ODM(Object Data Mapping,对象数据映射):面向非关系型数据库,ODM将对象映射到文档型数据库(例如MongoDB)的文档。
  • 如果你用的是 MongoDB ➜ 选择 ODM(Mongoose)
    如果你用的是 MySQL / PostgreSQL ➜ 选择 ORM(Prisma、Sequelize)
  • 对比
特性ORMODM
数据库类型关系型文档型(NoSQL)
数据结构表格JSON 文档
适合场景严格结构、复杂关系灵活结构、快速迭代
常用工具Sequelize, Prisma, TypeORMMongoose
学习曲线相对复杂(SQL)相对简单(更贴近 JS)

ORM

项目内容
全称Object-Relational Mapping
适用数据库关系型数据库(如 MySQL、PostgreSQL、SQLite)
数据结构表(Tables)、行(Rows)、列(Columns)
常用 Node.js 框架Sequelize、TypeORM、Prisma
使用场景使用结构化数据、有复杂关系(如一对多、多对多)的场景

ODM

项目内容
全称Object-Document Mapping
适用数据库文档型数据库(如 MongoDB)
数据结构文档(Document),类 JSON 结构
常用 Node.js 框架Mongoose
使用场景非结构化数据、灵活 schema、嵌套对象较多的场景

ODM(Object Data Mapping,对象数据映射)是指将应用程序中的对象(通常是面向对象编程语言中的对象)映射到数据库中的数据记录(尤其是文档型数据库)。ODM是ORM(Object-Relational Mapping,对象关系映射)的一种扩展,专门用于对象和非关系型数据库(如MongoDB)之间的映射。

  • ODM的基本概念:
    对象:应用程序中的数据结构,通常是一个类或实例,代表业务数据(如用户、订单、商品等)。
    数据:存储在数据库中的数据记录,例如MongoDB中的文档。
    映射:ODM通过将应用程序对象的属性和数据库记录之间建立映射关系,实现对象和数据之间的转换。
  • ODM的作用:
    提供高层抽象,简化了与数据库的交互。开发者可以像操作对象一样操作数据库。
    处理对象和数据库之间的数据转换,开发者不需要关心底层的SQL查询和数据存取方式。
    提供更方便的查询接口,使得文档型数据库的操作更符合面向对象编程习惯。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词