用途:该技能用于在编写 Drizzle ORM 相关代码时提供实现指导。Drizzle 是轻量、无头、零依赖的 TypeScript ORM,支持从 schema 推导完整 TypeScript 类型,无需生成类型或单独 schema 语言。
主要能力:关系查询可用 .with() 抓取嵌套数据,避免手写 join;预编译语句适合重复执行的热路径,用占位符传参以提升性能;迁移由 drizzle-kit 管理,支持版本控制、回滚,并区分 push 与 generate;事务用 db.transaction() 包装多操作写入,支持嵌套事务的保存点。
使用方式:推荐每个表一个文件;用 defineRelations() 定义一对多、多对多关系以启用嵌套查询;嵌套数据优先用关系 API,复杂聚合用 SQL builder;热路径使用 .prepare() 预编译;多操作写入放入事务并用 try/catch 捕获所有错误;迁移前用 drizzle-kit migrate:dev 测试并审阅生成的 SQL,迁移变更后运行 drizzle-kit generate;用 InferSelectModel 提取运行时类型。
适用场景:设计订单等含关系的 schema、优化重复查询、处理一致性写入、审阅迁移 SQL。限制:不应优先用于纯原生 SQL 迁移等任务;从嵌套关系选择列时需显式指定 columns,否则列不包含在结果中;事务内未处理的 promise rejection 会导致意外回滚;schema 类型未更新多因未重新生成类型或缓存过期。未提供具体版本、安装命令与授权信息。