用途:Prisma 是面向 TypeScript 的数据库工具包,采用 schema 优先方式定义数据模型,自动生成类型安全的查询客户端,适合全栈应用、快速原型与团队协作开发。
主要能力:通过 prisma/schema.prisma 定义模型、字段类型与关系(一对一、一对多、多对多、自关联);支持 CRUD、嵌套写入、过滤排序分页、聚合与 groupBy、原始 SQL($queryRaw/$executeRaw);支持交互式与批量事务;提供数据迁移(migrate dev/deploy/status/reset)、原型推送(db push)和从现有库拉取(db pull);Prisma Studio 提供可视化数据浏览与编辑。
用法:安装 npm install prisma @prisma/client,初始化 npx prisma init,编辑 schema 后运行 npx prisma migrate dev --name init 创建迁移、npx prisma generate 生成客户端、npx prisma studio 打开可视化界面;生产环境用 npx prisma migrate deploy 应用迁移。客户端通过 new PrismaClient() 创建并复用单例。
限制与注意:资料指出应避免在请求处理器内重复创建 PrismaClient、避免 N+1 查询、多步操作需使用事务、外键与常用查询字段应加索引、大表 findMany 需分页、生产环境禁用 migrate dev;边缘运行时支持有限,相比 Drizzle 包体较大(约 300kB)。具体支持数据库、版本与收费信息暂未提供。