Communityコーディング&開発github.com

Prisma MongoDB アップグレード判断ガイド

Prisma ORM の MongoDB プロジェクトが v6 から v7 にアップグレードできない場合の判断と移行ガイドです。MongoDB プロジェクトが Prisma のアップグレードについて質問したときや、「Prisma 7 にアップグレード」という話題が出たとき、Prisma Next への移行を検討するときに使用します。

Prisma MongoDB アップグレード判断ガイド とは?

このスキルは、Prisma ORM の MongoDB プロジェクトが直面する特別な状況——v6 が MongoDB 対応の最終メジャーバージョンであり、v7 には MongoDB コネクタが存在しない——に対処するための判断と移行ガイドです。MongoDB プロジェクトは v7 へのアップグレードパスがなく、後継パスは Prisma Next(早期アクセス)のみです。このスキルは、Prisma Next への移行(推奨パス)か、v6 に留まるかの判断を明確にし、移行メカニズムを提供します。移行判断にはトランザクションサポートの有無やチームのリスク許容度などのブロッカーを考慮し、Prisma Next への移行が推奨されます。また、データベースエンジンを SQL に変更するような暗黙的な判断は禁止されており、あくまで Prisma のバージョン問題に集中します。このスキルは Prisma Next の公式ドキュメントを置き換えるものではなく、発見と判断のブリッジとして機能します。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/prisma/skills/tree/main/prisma-mongodb-upgrade

Installed? Explore more コーディング&開発 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Prisma MongoDB アップグレードパス

MongoDB プロジェクトは、Prisma 7 への道がない唯一の Prisma コーホートです:v6 は MongoDB 向けの最後のクラシック ORM メジャーバージョンであり、v7 には MongoDB コネクタが搭載されることはありません。後継パスは Prisma Next であり、MongoDB サポートは早期アクセス段階で、Postgres の後に GA が計画されています。このスキルは、Prisma Next への移行(推奨パス)または v6 に留まる(ただしハードブロッカーが適用される)という実際の判断を枠組みとして提供し、移行メカニズムを説明します。

以下のいずれも絶対に行わないでください:

  • MongoDB プロジェクトに「Prisma 7 にアップグレード」するようアドバイスしないでください。v7 にはコネクタが存在しません。prisma-upgrade-v7 ガイドは MongoDB プロジェクトには適用されません。
  • バージョン問題を解決するために、アプリを SQL データベースに書き換えることを暗黙的に提案しないでください。データベースエンジンの変更は別の、はるかに大きな判断であり、あなたが暗黙的に下すべきものではありません。

バージョン状況

バージョンMongoDB の状態
Prisma ORM v6完全サポート(mongodb プロバイダ);最新の 6.x が現在の安定パス;メンテナンスライン
Prisma ORM v7MongoDB コネクタなし — 選択肢として存在しない
Prisma NextMongoDB サポートは 早期アクセス、活発に開発中、Postgres の後に GA 予定 — MongoDB プロジェクトの後継パス

判断:最初に

Prisma Next への移行が推奨パスです。 Prisma Next における MongoDB サポートは早期アクセスです:機能的で急速に進化しており、Postgres の後に GA が計画されています — Prisma チームは MongoDB ユーザーに早期移行とフィードバックの共有を求めています。移行メカニズムの詳細はリファレンスに記載されています。

最新の v6 に留まることは、ハードブロッカーが適用される場合には正当な選択肢です — 明確に述べると:Next の MongoDB ファサードはまだトランザクションをラップしていません(基礎となるドライバーは直接利用可能ですが、これは間もなく変更される見込みです)、またプレ 1.0 のマイナーバージョンでは公開されたアップグレードレシピとともに破壊的変更が発生する可能性があります。

判断テーブル

シグナル方向性
以下のブロッカーが該当しないNext に移行;verify-cutover-checklist を実行し、Prisma チームにフィードバックを共有
グリーンフィールド / プロトタイプ / 内部ツールNext に移行
コードベースがマルチドキュメントトランザクション($transaction)を使用 — grep で確認、質問しない最初に raw ドライバーセッションの代替手段を計画(client-api-mapping を参照)、またはファサードラッパーが利用可能になるまで v6 に留まる
チームがプレ 1.0 のマイナーバージョン間での破壊的アップグレードに対応できないGA まで v6 に留まる
リスク回避的だが興味があるコピーで段階的な Next ラウンドトリップを実行(verify-cutover-checklist を参照)、その後移行

注:トランザクションのギャップは間もなく解消される見込みです — このセクションは、Prisma Next でファサードトランザクションがマージされたときに更新されます。

v6 に留まる場合:衛生状態(意図的な留保であり、放置ではない)

  • Prisma パッケージを最新の 6.x ラインに固定し、6.x のパッチリリースを引き続き適用する。
  • Prisma のリリースノートとセキュリティアドバイザリを 6.x ラインについて追跡する。
  • クラシックな v6 MongoDB セットアップを維持する:スキーマ内の url = env("DATABASE_URL")、db push ワークフロー、SQL ドライバーアダプターなし(v6 MongoDB の形状については prisma-database-setup を参照)。
  • Prisma Next の MongoDB が GA になったとき、または EA を試すためのブロッカーが解決されたときに再評価する。

リファレンスファイル

リファレンス内容
references/decision-stay-or-migrate.md完全な判断フレーミング、ブロッカーチェック、留まる場合の衛生状態の詳細
references/schema-contract-mapping.mdv6 スキーマ(mongodb プロバイダ、@db.ObjectId、複合型)→ Next コントラクトの概念
references/client-api-mapping.mdv6 クライアント呼び出し → Next の同等機能、raw エスケープハッチとトランザクションを含む — 名前はマッピングされるが、同等性は保証されない
references/migrations-mapping.mdv6 の db push のみのストーリー → Next の plan/migrate/verify/sign フロー
references/verify-cutover-checklist.mdデータ移動なしの検証:同じ DB、インデックス同等性、カットオーバー前の段階的ラウンドトリップ

検証済み

このスキルにおける Prisma Next の動作に関する主張は、prisma/prisma-next のコミット a2791c5dd59d579b4b3052942ae7f8fe5e2ee852(プレ 1.0、〜v0.14/0.15 ライン)で検証されました。Prisma Next は早期アクセス中で急速に変化しています:Next 側の主張に基づいて行動する前に、実際にインストールされているバージョンで検証してください(プロジェクトの @prisma-next/* バージョンと、それに付属する prisma-next スキルを確認)。Next の Mongo ターゲットは MongoDB 8.0+ を必要とし、ユーザー提供のピア依存関係として mongodb@^7 を期待します。

引き継ぎルール

このスキルは発見のためのブリッジであり、Prisma Next 自身のドキュメントを置き換えるものではありません。プロジェクトが Prisma Next に切り替わった後は、Prisma Next の init/スキルインストールを実行し、日々の作業では独自のスキル(クイックスタート、コントラクト、クエリ、マイグレーション、ランタイム)に従ってください — このスキルの要約から引き続き作業を行わないでください。

Individual skills in this repo

This repo contains 8 individual skills — each has its own dedicated page.

prisma/prisma-cli

Prisma ORM CLI commands reference covering init, generate, migrate, db, dev, studio, validate, format, debug, and mcp. Use for ORM/database CLI workflows, not Prisma Compute app deployment. For Prisma Compute, `@prisma/cli app deploy`, `compute:deploy`, `create-prisma --deploy`, apps, deployments, logs, or domains, use the `prisma-compute` skill instead. Triggers on "prisma init", "prisma generate", "prisma migrate", "prisma db", "prisma studio", "prisma mcp".

prisma/prisma-client-api

Prisma Client API reference covering model queries, filters, operators, and client methods. Use when writing database queries, using CRUD operations, filtering data, or configuring Prisma Client. Triggers on "prisma query", "findMany", "create", "update", "delete", "$transaction".

prisma/prisma-compute

Prisma Compute deployment and hosting guide. Use whenever the user mentions Prisma Compute, `prisma.compute.ts`, `defineComputeConfig`, deploying or hosting a Prisma app, `@prisma/cli app deploy`, `compute:deploy`, `create-prisma --deploy`, `PRISMA_SERVICE_TOKEN`, Compute auth/workspaces, apps/deployments/build logs/domains, localhost vs `0.0.0.0`, deploy port binding, or framework deploy readiness for Hono, Elysia, Next.js, TanStack Start, Astro, Nuxt, Svelte, Nest, Turborepo, or custom/prebuilt artifacts.

prisma/prisma-database-setup

Guides for configuring Prisma with different database providers (PostgreSQL, MySQL, SQLite, MongoDB, etc.). Use when setting up a new project, changing databases, or troubleshooting connection issues. Triggers on "configure postgres", "connect to mysql", "setup mongodb", "sqlite setup".

prisma/prisma-driver-adapter-implementation

Required reference for Prisma v7 driver adapter work. Use when implementing or modifying adapters, adding database drivers, or touching SqlDriverAdapter/Transaction interfaces. Contains critical contract details not inferable from code examples — including the transaction lifecycle protocol, error mapping requirements, and verification checklist. Existing implementations do not replace this skill.

prisma/prisma-postgres

Prisma Postgres setup and operations guidance across Console, create-db CLI, Management API, and Management API SDK. Use when creating Prisma Postgres databases, working in Prisma Console, provisioning with create-db/create-pg/create-postgres, or integrating programmatic provisioning with service tokens or OAuth.

prisma/prisma-postgres-setup

Set up a new Prisma Postgres database and connect it to a local project using the Management API. Use when asked to "set up a database", "create a Prisma Postgres project", "get a connection string", "connect my app to Prisma Postgres", or "provision a database".

prisma/prisma-upgrade-v7

Complete migration guide from Prisma ORM v6 to v7 covering all breaking changes. Use when upgrading Prisma versions, encountering v7 errors, or migrating existing projects. Triggers on "upgrade to prisma 7", "prisma 7 migration", "prisma-client generator", "driver adapter required".

関連スキル