速通 syntax.fm 633 讲 ORM
辛宝Otto
音频听不了?可通过下面方式收听:
本期音频时长 14 分钟,稍长,可安全收听。
介绍#
本期带读 syntax.fm 《wtf is an orm》,介绍和数据库有关的 ORM。Object Relation Mapping ORM, 对象关系映射
- 主播认为即便不用现成的 ORM,随着业务发展也会沉淀自己的 ORM
- 1971 年 IBM 就有 ORM 的概念了
- ORM 一般支持多种数据库 support multiple types of databases
- 和关系数据库 mysql/postgres/sql server 等,NoSQL 也需要数据的 shape 约束。schema/model for type safty
- prisma 的流行和问题。own dsl
- sequelize 不支持 no sql support sqlite 快速实现
- objection.js 没用过。7k star,持续了半年,常规支持
- knex 没提,其实 strapi 用到了
- drizzle 推特很火,0 依赖,lightweight 。http,work in serverless 支持 tcp 链接、支持不同的 js 运行时 deno/node/cloudflare workers/fastify/alibaba
- mongoose -shape of your data。聚合
- typeorm - from nest.js/ also auth/web hooks, service
- waterline
- 优化、控制权、给出 sql 方案、必须要学习 orm 语法
- migration 迁移,变化 db 结构