SuperAPI AI 工具集

prisma-postgres-setup

部署与运维

查看项目

更新于 10-16 08:40

技能介绍

用途:通过 Prisma Management API 为本地项目开通新的 Prisma Postgres 数据库并完成连接配置,适用于“设置数据库”“创建 Prisma Postgres 项目并本地连接”“获取连接字符串”等场景。不适用于 CI/CD 预览库(用 prisma-postgres-cicd)、应用内多租户开通(用 prisma-postgres-integrator),以及已存在并已连接的数据库的 schema/迁移任务。

前提:Node.js 18+、Prisma Postgres 工作区、工作区服务令牌。

主要流程:1) 认证,从提示、环境变量 PRISMA_SERVICE_TOKEN 或 .env 获取令牌,否则引导用户在 Console 创建;2) 调用 GET https://api.prisma.io/v1/regions/postgres 列出可用区域并以交互方式选择;3) POST https://api.prisma.io/v1/projects 创建项目并建库,取 data.database.connections[0].endpoints.direct.connectionString,若 provisioning 则轮询数据库状态;4) 可选创建命名连接;5) 本地安装 npm install prisma @prisma/client @prisma/adapter-pg pg dotenv,将连接串写入 .env 的 DATABASE_URL,确认 .gitignore 含 .env,package.json 设 "type": "module",必要时 npx prisma init;schema.prisma 使用 provider = "postgresql" 且不写 url,连接 URL 放在 prisma.config.ts 并由 dotenv/config 加载;6) 定义模型后运行 npx prisma migrate dev --name init,仅原型模式才用 npx prisma db push 加 npx prisma generate;7) 用 test-connection.ts 验证后删除,可用 npx prisma studio 或 Console 查看数据。

限制与注意:Prisma 7 中连接 URL 不写在 schema.prisma;客户端需从 ./generated/prisma/client.js 导入,用 pg.Pool 加 PrismaPg 适配器实例化,不能无参 new PrismaClient(),也不使用 datasourceUrl。错误处理涵盖 401、404、422、429。