drizzle-best-practices

Drizzle ORM 与 PostgreSQL 开发的最佳实践指南

安装使用

复制下面这段提示词发给你的 AI(Claude / Cursor / TRAE / Codex / WorkBuddy 等),它会自动帮你完成安装:

帮我安装这个 AI Skill:drizzle-best-practices。
它的用途是:Drizzle ORM 与 PostgreSQL 开发的最佳实践指南
完整的 Skill 内容见:https://321skill.com/skills/drizzle-best-practices/raw/index.md
请读取该页面内容,如果是 SKILL.md 格式直接安装,如果是 README 提炼核心 prompt 后安装。

提示词包含完整的 Skill 内容链接,AI 读取后即可完成安装。你也可以 查看完整内容 确认无误。

使用示例

'我正在用 Drizzle ORM v1 设计一个用户和文章的一对多关系,应该怎么写?',它会根据最佳实践,提供使用 `defineRelations` 的正确定义方式、表结构示例,并解释为何要这样设计以避免 N+1 查询等问题。

介绍

这个 Skill 旨在解决开发者在 TypeScript 项目中使用 Drizzle ORM 连接 PostgreSQL 数据库时,因版本更迭、API 差异和复杂查询模式而遇到的代码规范与性能问题。它提供了一套结构化的最佳实践,覆盖从表结构设计、关系建模到查询优化和类型安全的 8 个核心类别,并配有正误代码示例和原理说明。

使用时,开发者只需在涉及 Drizzle ORM 与 PostgreSQL 的开发、调试或迁移场景中激活此 Skill。它会根据上下文提供针对性的指导,例如如何设计包含 JSONB、数组或枚举的 Postgres 表,如何正确建模一对多、多对多关系,以及如何编写高效的类型安全查询。

它非常适合正在或计划使用 Drizzle ORM 构建 PostgreSQL 后端应用的 TypeScript 开发者,特别是那些从 Prisma、TypeORM 或 Sequelize 迁移过来,或是在 v1 RC 与 0.45.x 版本间感到困惑的团队。

与零散的文档或通用编程助手不同,这个 Skill 专注于 Drizzle ORM 在 PostgreSQL 这一特定技术栈下的深度实践,内容由社区专家提炼,具有高度的针对性和实用性,能有效避免因 API 误用或模式不当导致的性能瓶颈和类型错误。

核心特点

核心区别在于其深度聚焦于 Drizzle ORM + PostgreSQL 这一技术组合,并清晰区分了 v1 RC 与 0.45.x 两个主要版本的 API 差异,提供了版本检测指南和针对性的代码示例,避免了因版本混淆导致的语法错误。

注意事项

不适用于使用 Drizzle ORM 连接 MySQL 或 SQLite 数据库的场景,也不适用于处理纯原生 SQL 或其他 ORM(且目标不是迁移到 Drizzle)的情况。

常见问题

Drizzle ORM v1 和 0.45.x 版本有什么区别?

主要区别在于关系定义和关系查询 API。v1 使用 `defineRelations` 和对象语法,而 0.45.x 使用 `relations()` 辅助函数和回调/操作符语法。基础查询构建器(如 `db.select()`)在两个版本中保持一致。

如何从 Prisma 迁移到 Drizzle ORM?

此 Skill 提供了迁移指导,涵盖表结构转换、关系映射、查询重写等关键步骤,并强调了利用 Drizzle 的类型安全和 Zod 集成优势来重构数据访问层。

给 AI 助手的安装指引

如果你的 AI 编程助手(Claude Code、Cursor、TRAE 等)能看到这个页面,把下面这段发给它即可自动完成安装:

请访问 https://321skill.com/skills/drizzle-best-practices/raw/index.md 读取 drizzle-best-practices 的原始 Skill 定义(Markdown 格式),按其中说明在我的环境里完成安装和配置。