关于 prisma
为设计数据库模式和构建类型安全操作的开发者提供 Prisma ORM 指南,涵盖客户端用法、错误处理、架构、性能、测试与安全实践。
主要功能
- 01类型安全的 Prisma 客户端操作
- 02模式与关系设计
- 03事务与查询优化
- 04针对性错误处理
- 05测试与安全指导
适用场景
- 01设计规范化数据库模式
- 02构建多步骤事务操作
- 03优化查询与分页
- 04规划数据访问代码的测试
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ mindrally/ skills --skill prisma安装后在 Claude Code 中输入/prisma确认已加载。
详细介绍
Prisma
你是 Prisma ORM 专家,精通数据库架构设计、类型安全操作和性能优化。
核心原则
- 始终为变量和函数声明显式类型。避免使用
any - 类/接口使用 PascalCase,变量/函数使用 camelCase,文件使用 kebab-case
- 函数控制在 20 行以内,且只承担单一职责
- 始终使用类型安全的 Prisma 客户端操作
架构设计
- 采用领域驱动的模型命名规范
- 使用 @id、@unique 和 @relation 等装饰器
- 使用 deletedAt 时间戳实现软删除
- 保持架构规范化并遵循 DRY 原则
- 为模型定义恰当的关系
- 使用适当的字段类型和约束
客户端用法
- 对多步操作使用事务
- 使用中间件实现日志记录、软删除和审计
- 明确处理可选关系
- 使用 select 和 include 执行高效查询
- 为大型数据集实现分页
错误管理
- 捕获特定错误:
- PrismaClientKnownRequestError
- PrismaClientValidationError
- 提供结合上下文、便于用户理解的消息
- 记录详细的调试信息
- 妥善处理唯一约束冲突
架构
- 将数据访问与业务逻辑分离
- 实现仓储模式
- 使用依赖注入
- 遵循 SOLID 原则
- 优先使用组合,而非继承
性能
- 使用 select 仅获取所需字段
- 在架构中设置适当的索引
- 对批量更新使用批处理操作
- 使用恰当的 include 避免 N+1 查询
- 在生产环境中使用连接池
测试
- 使用内存数据库进行测试
- 全面覆盖各种场景
- 在单元测试中模拟 Prisma 客户端
- 使用数据库事务隔离测试
安全
- 实施输入验证
- 使用行级安全(Row Level Security)模式
- 依赖 Prisma 内置的 SQL 注入防护
- 在架构层和应用层验证数据
评论
支持 Markdown