SuperAPI AI 工具集

drizzle

数据与分析

查看项目

更新于 10-16 00:29

技能介绍

用途:Drizzle ORM 用于在 TypeScript 中构建类型安全的数据库应用,支持 PostgreSQL、MySQL、SQLite 及 Turso(边缘 SQLite)。安装方式按数据库不同:PostgreSQL 用 npm install drizzle-orm postgres,开发依赖 npm install -D drizzle-kit;MySQL 用 npm install drizzle-orm mysql2;SQLite 用 npm install drizzle-orm better-sqlite3,开发依赖 npm install -D drizzle-kit @types/better-sqlite3。

主要能力:定义表与列(pgTable、mysqlTable、sqliteTable),用 $inferSelect 和 $inferInsert 做类型推断;用 relations 定义一对一、一对多、多对多关系并启用 db.query 关系查询,避免 N+1;支持 select、内连接、左连接、条件、排序、分页、聚合与 groupBy/having;支持 insert(含 returning、批量、upsert)、update、delete、事务与嵌套事务(保存点);支持原始 SQL(sql 模板)与预处理语句(placeholder、prepare)。迁移由 drizzle-kit 管理,可在 drizzle.config.ts 配置,常用命令:npx drizzle-kit generate、npx drizzle-kit migrate、npx drizzle-kit push、npx drizzle-kit pull、npx drizzle-kit studio。

使用方式:需在 drizzle(client, { schema }) 传入 schema 以启用查询 API,并从 schema 文件导出关系。关系查询应使用 db.query 而非 select()。多步操作建议使用事务,频繁查询可用预处理语句。

适用场景:需要轻量、SQL 可控且类型安全的 TypeScript 数据库项目。

限制:具体版本、平台支持范围、收费与授权信息暂未提供。