Skip to content

NodeJS ORM

Prisma ORM

Prisma 特性

  • 基于 TypeScript 类型安全,自动生成操作数据 API
  • 自创了 Prisma.schema PSL 文件,简洁明了(目前已经支持多文件)
  • 多数据库抽象支持,无需关注底层
  • 良好的 CLI 命令支持,自动化迁移(不是数据库之间)
  • 良好的文档和社区支持

Primsa 使用流程

prisma -> init -> schema -> migrate -> 使用 primsa 客户客户端操作数据库。

TypeORM

TypeORM 特性

  • 基于 TypeScript 类型安全,支持 JavaScript/ESM, Class 实体、语法灵活
  • 支持 DataMapper 和 ActiveRecord 两种模式
  • 直接关系模型(关联,单项、双向、自引用、连接)
  • 连接池、支持过数据库实例
  • 多数据库支持
  • 自动迁移和生成迁移文件

Sequelize

Sequelize 特性

  • TypeScript 和 Node.js ORM 数据库支持
  • 多种数据库支持,支持事务

Mongoose (ODM)

drizzle

drizzle 特性

  • Drizzle ORM 是一个有头的无头 TypeScript ORM 🐲
  • 如果您了解 SQL,那么您就了解 Drizzle。
  • 支持主流的数据库和 serverless

mikro-orm

mikro-orm 特性

  • Node.js 的 TypeScript ORM 基于数据映射器、工作单元和身份映射模式。
  • 支持主流的数据库

Knex.js

Knex.js 特性

  • 定位是 基于 JavaScript 的 SQL 查询生成器。
  • 主流的数据库均支持、支持 TypeScript。

参考