SuperAPI AI 工具集

drizzle-orm

编程与开发

查看项目

更新于 10-16 00:06

技能介绍

用途:Drizzle ORM 是面向 TypeScript 的轻量、类型安全 ORM,提供类 SQL 查询 API 与关系查询 API,支持 PostgreSQL、MySQL、SQLite、Cloudflare D1 和 Durable Objects。适用于定义数据库 schema、编写查询、设置表关系、运行迁移等场景。

主要能力:用 pgTable、sqliteTable 等定义表结构,支持主键、唯一、索引、默认值、外键引用与级联删除;通过 $inferSelect、$inferInsert 从 schema 推导类型,无需手写接口;用 relations 定义一对多、多对一关系;类 SQL API 支持 select、where、and/or、like、orderBy、limit、join 等;关系 API 通过 db.query 获取嵌套数据,可指定部分列或排除列;支持 insert、批量插入、onConflictDoUpdate 上插、update、delete 及 returning;支持事务。

使用方式:在 schema.ts 中定义表,将 { schema } 传给 drizzle() 以启用关系查询;关系查询需先定义 relations;外键需显式 references(() => table.column);用 returning() 获取变更行。资料还给出 Entity 与 Repository 模式,用于封装 API、领域与数据库层之间的数据转换及错误处理。

限制与说明:具体安装命令、迁移命令、收费与价格信息暂未提供;不同数据库的列类型、连接与测试细节需参考对应数据库指南。