SuperAPI AI 工具集

prisma-client-api-constructor

编程与开发

查看项目

更新于 10-16 05:07

技能介绍

本条目介绍 PrismaClient 构造函数的配置方式,用于在实例化 Prisma Client 时完成初始化设置。

用途:创建 Prisma Client 实例并传入运行所需选项,v7 中需提供驱动适配器。

主要能力:

  1. adapter:必填(v7),传入驱动适配器实例,例如使用 @prisma/adapter-pg 的 PrismaPg,并读取 process.env.DATABASE_URL 作为 connectionString。
  2. accelerateUrl:面向 Accelerate 用户,传入 prisma:// URL,并配合 @prisma/extension-accelerate 的 withAccelerate() 通过 $extends 扩展。
  3. log:配置日志,可选级别有 query(所有 SQL 查询)、info(信息)、warn(警告)、error(错误)。日志可输出到 stdout,或以 emit: 'event' 方式发出事件,配合 prisma.$on 监听 query、info、warn、error 事件,获取 query、params、duration 等信息。
  4. errorFormat:控制错误格式,取值 pretty、colorless、minimal。
  5. transactionOptions:设置默认事务参数,包括 maxWait(获取事务最大等待毫秒)、timeout(事务最长持续毫秒)、isolationLevel(如 Serializable)。

使用方式: 可直接 new PrismaClient({ adapter }) 创建实例;按需加入 log、errorFormat、transactionOptions。 开发环境推荐单例模式,避免创建多个客户端实例:借助 globalThis 缓存实例,仅在非 production 时挂载。Next.js 模式与之类似,通过全局变量保存单例并默认导出。

适用场景:需要统一配置日志观测、错误显示、事务默认值与连接方式的 Prisma 项目。

限制:资料未说明其他构造选项、各选项的默认值、版本兼容范围及适配器支持情况,暂未提供。示例代码须保持原样使用。