Prisma 工作流
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @kunlungrowth/prisma-workflows。
技能介绍
为什么需要 Prisma 工作流
在团队协作中,Prisma 的使用往往从一个简单的 schema.prisma 开始,但随着业务膨胀,问题接踵而至:缺乏规范的模型设计导致隐式约束泛滥;迁移脚本在 CI/CD 中混乱执行,引发线上环境故障;查询层出现 N+1 请求或事务超时,拖垮数据库连接池。这些坑大多并非 Prisma 本身的缺陷,而是缺乏一套标准化的工作流。
本技能将 Prisma 的最佳实践固化为可重复执行的步骤,帮助开发者构建透明且可依赖的数据层。
核心能力与关键步骤
本技能围绕四个核心维度展开:
- Schema 设计:遵循最佳实践定义
model关系与enum。建议使用@@unique或@@index显式声明复合索引,选择UUID或autoincrement作为主键策略,并通过@map控制底层表名。 - 迁移策略:区分开发与生产环境。开发阶段使用
prisma migrate dev快速迭代;生产环境推荐使用migrate deploy自动化执行,或生成 SQL 交由 DBA 审核。针对回滚难题,技能提供了migrate diff生成反向 SQL 的修复方案。\n- 查询优化:解决常见的 N+1 问题,指导使用include或select精准加载关联数据。针对大数据量场景,推荐cursor分页替代skip,并规范$transaction与createMany的用法。 - 生产运维:利用
$on()监听慢查询,并通过配置减少生成代码的体积。
适用边界与注意点
本技能专注于关系型数据库的建模与优化。如果你的项目深度依赖 MongoDB 的文档模型,或需要进行复杂的多维分析查询,Prisma 可能不是最佳选择,建议结合原生 SQL 或专用查询引擎使用。
使用场景
- 新项目选型 Prisma 作为 ORM,需要根据业务实体(如博客的 User 与 Post)设计 Prisma schema,定义关系、索引和枚举。
- 将现有项目从 TypeORM 或 Sequelize 迁移到 Prisma,需要生成对应的 schema.prisma 并建立数据库迁移基线。
- 在 CI/CD 流水线中管理数据库迁移,需要配置 prisma migrate deploy 自动执行待应用迁移,并准备回滚方案。
- 应用上线后出现查询慢或 N+1 请求问题,需要分析 Prisma 查询日志,通过 include/select 优化或改用 cursor 分页。
适合人员
- 后端开发工程师:负责数据库建模与迁移,希望用 Prisma 替代手写 SQL 或切换现有 ORM 方案。
- 技术架构师:评估 Prisma 在团队中的适用性,需要设计可扩展的数据层架构和迁移流程。
- 全栈开发者:在 Next.js 等项目中使用 Prisma 管理数据层,经常遇到 schema 变更和查询性能问题。
- 数据库管理员(DBA):需要审核 Prisma 生成的迁移 SQL,确保生产环境数据库变更安全可控。