prisma-orm-v7-skills

prisma-orm-v7-skills

Key facts and breaking changes for upgrading to Prisma ORM 7. Consider version 7 changes before generation or troubleshooting

5星標
3分支
更新於 1/21/2026
SKILL.md
readonlyread-only
name
prisma-orm-v7-skills
description

Key facts and breaking changes for upgrading to Prisma ORM 7. Consider version 7 changes before generation or troubleshooting

Links

Upgrade

# Upgrade packages
pnpm add @prisma/client@7
pnpm add -D prisma@7

Breaking Changes (v7)

Minimum versions

  • Node.js: 20.19.0+ (and 22.x)
  • TypeScript: 5.4.0+

Prisma is now ESM

  • Prisma ORM ships as ES modules.
  • Set "type": "module" in package.json (or migrate your project to ESM).
  • TypeScript projects must compile/resolve ESM (guide example: module: ESNext, target: ES2023, moduleResolution: node).

Prisma schema + generation changes

  • Generator provider: prisma-client-jsprisma-client.
  • output is required in generator client.
  • Prisma Client is no longer generated into node_modules by default.
  • After npx prisma generate, update imports to your generated output path (example:
    import { PrismaClient } from './generated/prisma/client').

Schema datasource deprecations:

  • url, directUrl, shadowDatabaseUrl in schema.prisma are deprecated.
  • Move datasource config to prisma.config.ts (Prisma Config).
  • If you used directUrl for migrations, set the CLI migration connection string in prisma.config.ts.

Driver adapters required for Prisma Client (new instantiation)

  • Prisma Client creation now requires a driver adapter for all databases.
  • Example adapters:
    • Postgres: @prisma/adapter-pg (use PrismaPg with a direct DB connection string)
    • SQLite: @prisma/adapter-better-sqlite3

Prisma Accelerate users (v6 → v7)

  • Do not pass prisma:// or prisma+postgres:// (Accelerate URLs) to a driver adapter.
  • Keep the Accelerate URL and instantiate Prisma Client with the Accelerate extension instead.

Env vars are not loaded by default

  • Prisma CLI no longer auto-loads .env files in v7.
  • Explicitly load env vars (for example import 'dotenv/config' in prisma.config.ts, or load env in your scripts).
  • Bun users: no change required (bun auto-loads .env).

Prisma CLI config moved to prisma.config.ts

  • Prisma Config is now the default place to configure how Prisma CLI behaves.
  • Place prisma.config.ts at the project root (next to package.json).
  • Configure schema path, migrations path/seed, and datasource URL there.

Client middleware removed

  • prisma.$use(...) is removed.
  • Migrate middleware logic to Prisma Client Extensions.

Metrics removed from Client Extensions

  • The Metrics preview feature is removed in v7.
  • Use your database driver/adapter or implement custom counters via extensions.

Migrate/seed/generate behavior changes

  • Automatic seeding after prisma migrate dev / prisma migrate reset is removed.
    • Run seeding explicitly: pnpm prisma db seed (or pnpm exec prisma db seed).
  • --skip-generate and --skip-seed flags removed.
  • prisma migrate dev and prisma db push no longer run prisma generate automatically.
    • Run pnpm prisma generate (or pnpm exec prisma generate) explicitly.

Prisma-specific env vars removed

  • Removed env vars:
    • PRISMA_CLI_QUERY_ENGINE_TYPE
    • PRISMA_CLIENT_ENGINE_TYPE
    • PRISMA_QUERY_ENGINE_BINARY
    • PRISMA_QUERY_ENGINE_LIBRARY
    • PRISMA_GENERATE_SKIP_AUTOINSTALL
    • PRISMA_SKIP_POSTINSTALL_GENERATE
    • PRISMA_GENERATE_IN_POSTINSTALL
    • PRISMA_GENERATE_DATAPROXY
    • PRISMA_GENERATE_NO_ENGINE
    • PRISMA_CLIENT_NO_RETRY
    • PRISMA_MIGRATE_SKIP_GENERATE
    • PRISMA_MIGRATE_SKIP_SEED

MongoDB support

  • Prisma ORM 7 does not support MongoDB yet; stay on Prisma ORM 6 if you need MongoDB.

Upgrade Checklist (quick)

  • Upgrade packages; confirm Node/TypeScript versions.
  • Move to ESM (or adjust your runtime/build to consume ESM).
  • Update schema.prisma generator to provider = "prisma-client" and set output.
  • Run pnpm prisma generate and update Prisma Client imports to the generated output path.
  • Add prisma.config.ts at repo root; move datasource config and load env explicitly.
  • Update Prisma Client instantiation to use a driver adapter (unless using Accelerate).
  • Update workflows: run pnpm prisma generate and pnpm prisma db seed explicitly.

You Might Also Like

Related Skills

zig-system-calls

zig-system-calls

87Kdev-database

Guides using bun.sys for system calls and file I/O in Zig. Use when implementing file operations instead of std.fs or std.posix.

oven-sh avataroven-sh
獲取
bun-file-io

bun-file-io

86Kdev-database

Use this when you are working on file operations like reading, writing, scanning, or deleting files. It summarizes the preferred file APIs and patterns used in this repo. It also notes when to use filesystem helpers for directories.

anomalyco avataranomalyco
獲取
vector-index-tuning

vector-index-tuning

26Kdev-database

Optimize vector index performance for latency, recall, and memory. Use when tuning HNSW parameters, selecting quantization strategies, or scaling vector search infrastructure.

wshobson avatarwshobson
獲取

Implement efficient similarity search with vector databases. Use when building semantic search, implementing nearest neighbor queries, or optimizing retrieval performance.

wshobson avatarwshobson
獲取

Master dbt (data build tool) for analytics engineering with model organization, testing, documentation, and incremental strategies. Use when building data transformations, creating data models, or implementing analytics engineering best practices.

wshobson avatarwshobson
獲取
event-store-design

event-store-design

26Kdev-database

Design and implement event stores for event-sourced systems. Use when building event sourcing infrastructure, choosing event store technologies, or implementing event persistence patterns.

wshobson avatarwshobson
獲取