Drizzle is a headless TypeScript ORM. Zero dependencies, SQL-like API, single-query output. Packages: drizzle-orm (runtime), drizzle-kit (CLI/migrations).
| drizzle-orm/pg-core | pgTable, pgEnum, column types (serial, text, integer, uuid, timestamp, jsonb, varchar, boolean, numeric, bigint, geometry, vector, ...), index, uniqueIndex, unique, check, primaryKey, foreignKey |
| drizzle-orm | Operators: eq, ne, gt, gte, lt, lte, and, or, not, isNull, isNotNull, inArray, between, like, ilike, exists, sql, asc, desc. Utilities: getColumns, defineRelations, cosineDistance, l2Distance | | drizzle-orm (types) | InferSelectModel, InferInsertModel | | drizzle-zod | createInsertSchema, createSelectSchema |
PostgreSQL 的 Drizzle ORM 参考 — 架构定义、类型安全查询、关系以及使用 drizzle-kit 进行迁移。在以下情况下使用:(1) 使用列类型、索引、约束或枚举定义 pgTable 模式,(2) 编写 select/insert/update/delete 查询或联接,(3) 定义关系并使用关系查询 API (db.query.*),(4) 运行 drizzle-kitgenerate/migrate/push/pull,(5) 配置 drizzle.config.ts,(6) 使用 sql`` 模板运算符,或 (7) 使用PostGIS/pg_vector 扩展。 来源:jgamaraalv/ts-dev-kit。