101 人が閲覧(直近 30 日) TypeScript

Prismaのバージョン一覧|最新は7.10.1、Prisma 8はRC(2026年10月)確認方法と7への固定

Prismaのバージョン一覧|最新は7.10.1、Prisma 8はRC(2026年10月)確認方法と7への固定

Prismaの安定版の最新は7.10.1(npm公開 2026年10月15日)です。一方で、npmのprismaパッケージのlatestタグはPrisma 8のリリース候補(8.0.0-rc.23)を指しています。そのため、バージョンを指定せずにnpm install prismaを実行すると、Prisma 7のプロジェクトでも8のCLIが入ります。8のCLIではprisma -vもprisma generateも動きません。この記事では、2026年10月16日時点のnpmの状態と実際の挙動を確認したうえで、いま入れるべきバージョン、確認方法、Prisma 7への固定、v6からv7への移行手順をまとめます。

まとめ:Prismaバージョンの要点(2026年10月時点)

  • 本番で使う安定版はPrisma ORM 7系(最新7.10.1)。Prisma 8は開発中の名称「Prisma Next」から改称された作り直し版で、現在はRC(リリース候補)。公式のリリース状況ページは正式版を2026年10月の見込みとしている。
  • npm install prismaは8.0.0-rc系を入れる一方、@prisma/clientのlatestは7.10.1のまま。両方を版指定なしで入れると8のCLIと7のクライアントが混在し、警告は出ない。
  • Prisma 7のプロジェクトは"prisma": "^7"と"@prisma/client": "^7"で固定し、CIなどではnpx prisma@7と書く。
  • バージョン確認は、Prisma 7ならnpx prisma -v、Prisma 8ならnpx prisma --version。8では-vが--verboseの意味に変わった。
  • 保守期限:Prisma 6のセキュリティパッチは2026年11月19日まで。Prisma 7は8の正式版リリースから18か月間、バグ修正とセキュリティ更新が続く。

Prismaの最新バージョン:安定版7.10.1とPrisma 8 RC

いまのPrismaには「安定版の7系」と「RCの8系」が並んでいて、npmのタグもパッケージごとに指す先が違います。2026年10月16日にnpm view <パッケージ名> dist-tagsで確認した値は次のとおりです。

パッケージ latest prevタグ 属する版
prisma(CLI) 8.0.0-rc.23 prev: 7.10.1 Prisma 8
@prisma/client 7.10.1 prev: 6.19.3 Prisma 7
@prisma/orm-postgres 8.0.0-rc.18 なし Prisma 8
@prisma/adapter-pg 7.10.1 prev: 6.19.3 Prisma 7
@prisma/prisma7 7.10.1 なし Prisma 7

Prisma 8のRCはほぼ毎週更新されていて、番号はすぐに古くなります。記事の数字ではなく、手元でnpm view prisma dist-tagsを実行してlatestとprevを見てください。

Prisma 8(旧称Prisma Next)の位置づけと正式版の時期

Prisma 8は、2026年3月4日に「The Next Evolution of Prisma ORM」として発表された次世代版です。この記事には「Prisma 8 was developed under the working name Prisma Next」という編集注が付いていて、Prisma NextとPrisma 8は同じものを指します。Prisma 7のクライアント(PrismaClient)の延長ではなく、TypeScriptで作り直されています。スキーマはcontract.prisma(コントラクト)になり、クライアントはデータベースごとのライブラリ(PostgreSQLなら@prisma/orm-postgres)から作ります。

正式版の時期は、公式ドキュメントが「General availability is expected in October 2026.」、GitHubのREADMEが「8.0.0 final is expected in the next four to eight weeks」と書いていて、両者で幅があります。RCの間はリリースのたびに破壊的変更が入ることがあり、8.0.0-rc.18でもスキーマ内の生SQLの書き方と、ミドルウェアのフック名が変わりました。

npm install prismaでPrisma 8 RCが入る問題と7への固定

8.0.0-rcのnpm公開は2026年8月17日に始まり、遅くとも9月16日にはprismaのlatestタグが8のRCを指していました(10月16日時点でも同じ)。GitHubのissue #30322(2026年9月16日起票・10月16日時点でopen)は、「通常は安定版に使うlatestタグにRCが載っている」と指摘しています。Prisma 7のプロジェクトで何が起きるかを、空のプロジェクトで実際に確かめました(Node.js v26.5.0/npm 11.17.0)。

版指定なしで入れたときの組み合わせ(実測)

npm i -D prismaのあとにnpm i @prisma/clientを実行すると、package.jsonには次のように記録されました。

"devDependencies": { "prisma": "^8.0.0-rc.23" },
"dependencies":    { "@prisma/client": "^7.10.1" }

@prisma/client 7.10.1はpeerDependenciesでprismaを"*"(どの版でも可)としているため、npmは版の食い違いを警告しません。npm ls prisma @prisma/clientでも[email protected] dedupedと表示されるだけです。この状態でPrisma 7の手順どおりにコマンドを打つと、すべて終了コード2で止まりました。

$ npx prisma -v
No command registered for `-v`, did you mean `dev`?

$ npx prisma generate
No command registered for `generate`

$ npx prisma migrate dev
No command registered for `migrate`, did you mean `migration`?

$ npx prisma db push
No command registered for `push`, did you mean `update`?

実際の出力は"code":"CLI.UNKNOWN_COMMAND"を含むJSONで、上はその中のsummaryだけを抜き出したものです。今回はAIエージェント上の非対話シェルで実行したためJSONになり、--format humanを付けると通常の文字列で出ます。node_modulesの大きさも、8のCLIを含む構成は1.6GB、Prisma 7だけの構成は330MBでした。8のCLIには、Prisma Compute(Prismaのアプリ実行基盤)へのデプロイなどプラットフォーム機能の依存も入っているためです。

CIでキャッシュを使わずにnpm install prismaしているパイプラインや、Prisma 7をローカルにインストールせずにnpx prisma generateを実行するDockerfileは、8のCLIを取得してこのエラーになる可能性があります。package-lock.jsonをコミットしてnpm ciで入れている場合は、lockに書かれた版が入るので影響を受けません。

Prisma 7に留めるpackage.jsonとCIの書き方

公式の推奨は、2つのパッケージをメジャー7に固定することです。

{
  "devDependencies": { "prisma": "^7" },
  "dependencies": { "@prisma/client": "^7" }
}

すでに8が入ってしまった場合も、npm install --save-dev prisma@7で戻せます。実測ではpackage.jsonが"prisma": "^7.10.1"に書き換わり、npx prisma -vが7.10.1を表示し、node_modulesは330MBに戻りました。package.jsonを通さずに一時的に実行する場合は、npx prisma@7 generateのように版を付けます。npx prisma@prevでも7.10.1が動きますが、prevタグは8の正式版が出たあとに指す先が変わる可能性があるため、@7のほうが確実です。

7と8を同じプロジェクトで並べる@prisma/prisma7

8へ少しずつ移る場合は、7.10.0で追加された互換パッケージ@prisma/prisma7を使います。7のCLIがprisma7という名前で入り、prismaは8のCLIになります。設定ファイルもprisma7.config.tsに分けます。7.10.0のリリースノートはprisma@8と書いていますが、正式版が出るまでは@8の範囲にRCが含まれず、2026年10月16日時点のnpm view prisma@8は404になりました。正式版までは公式の移行ガイドと同じprisma@latestで入れます。

npm install --save-dev prisma@latest @prisma/[email protected]
npm install @prisma/[email protected]

npx prisma7 generate       # Prisma 7のクライアント生成
npx prisma7 migrate dev    # Prisma 7のマイグレーション
npx prisma --version       # Prisma 8のCLI

公式の7→8移行ガイドは、この並行運用を前提に、既存のPostgreSQLのデータを変えずに8へ移す手順を説明しています。ただし対象はPostgreSQLだけです。

インストール済みPrismaのバージョンを確認する方法

確認方法は、Prisma 7と8で違います。7のCLIはprisma -v(prisma versionの短縮形)で、CLI・クライアント・エンジンの版をまとめて表示します。公式のコマンドリファレンスの出力例は2.21.0-dev.4のままなので、7.10.1で実行した出力を載せます。

$ npx prisma -v
prisma               : 7.10.1
@prisma/client       : 7.10.1
Operating System     : darwin
Architecture         : x64
Node.js              : v26.5.0
TypeScript           : unknown
Query Compiler       : enabled
PSL                  : @prisma/prisma-schema-wasm 8.1.0-1.d1b3f377ca835d73fd50954a5e22128b9ebdd6b8
Schema Engine        : schema-engine-cli d1b3f377ca835d73fd50954a5e22128b9ebdd6b8 (at node_modules/@prisma/engines/schema-engine-darwin)
Default Engines Hash : d1b3f377ca835d73fd50954a5e22128b9ebdd6b8
Studio               : 0.33.0

6系までの出力にあったQuery Engine(Rust製のクエリエンジン)の行が無く、代わりにQuery Compiler : enabledが出ます。v7でクライアントからRustのエンジンが外れたことは、この行で確かめられます。8のCLIはprisma --versionで番号だけを返し(実測では8.0.0-rc.23)、prisma versionというサブコマンドはありません。

CLIの版とは別に、実際に解決されたパッケージを見るにはnpm lsを使います。prismaと@prisma/clientのメジャー番号が違っていたら、上の混在状態です。

npm ls prisma @prisma/client      # 解決済みの版
npm view prisma dist-tags          # npm上の latest / prev
npm view @prisma/client dist-tags

Prismaのバージョン履歴とサポート期限

メジャーバージョンの公開日とサポート期限

メジャー版は1年に1回前後のペースで上がってきました。公開日はnpmの公開記録(UTC)です。

版 公開日 保守の状況(2026年10月時点)
Prisma 4 2022-06-28 保守対象外
Prisma 5 2023-07-11 保守対象外
Prisma 6(2026年10月16日時点で6.19.3) 2024-11-28 2026-11-19までセキュリティパッチのみ
Prisma 7(最新7.10.1) 2025-11-19 8の正式版から18か月、バグ修正とセキュリティ更新
Prisma 8(RC) 2026-08-17(RCの初回公開) 正式版は2026年10月見込み

Prisma 6の期限は「7のリリースから12か月」で、2026年11月19日に終わります。公式のリリース方針にLTS(長期サポート版)という区分は書かれておらず、旧版の保守期間は新しいメジャー版の公開日(8は正式版の日)から数えます。リリース方針のページによると、通常のリリースは原則2週間おきで、Prisma 3以降はSemVerに従います。正式提供済み機能の破壊的変更はメジャー版で行われますが、オプトインのPreview・Early Access機能ではマイナー版でも破壊的変更が入ることがあります。

Prisma 7系の主要リリース(7.0〜7.10.1)

版 公開日 主な内容
7.0.0 2025-11-19 Rust不要のクライアントが既定に(正式版)
7.4.0 2026-02-11 クライアントのキャッシュ、部分インデックス対応
7.5.0 2026-03-11 Studioで生SQL実行・全文検索
7.7.0 2026-04-07 prisma bootstrapコマンド追加
7.8.0 2026-04-22 queryPlanCacheMaxSizeオプション追加
7.9.0 2026-07-20 CLIのタブ補完(bash・zsh・fish・PowerShell)
7.10.0 2026-08-25 @prisma/prisma7追加、Studioのローカルサーバー保護
7.10.1 2026-10-15 パッチ(npmのみ公開・GitHubのリリースノートは未掲載)

各版の詳細はGitHubのリリース一覧で見られます。リポジトリはprisma/prismaからprisma/ormに改名されていて、旧URLは転送されます。

Prisma 6・7・8の違い

6から7はクライアントの基盤の入れ替え、7から8はAPIとコマンドの作り直しです。8への移行は7への移行より重く、コードの書き換えが前提になります。

観点 Prisma 6 Prisma 7 Prisma 8(RC)
Node.js 18.18以上 20.19以上の20系/22.12以上の22系/24以上 22.18以上・24.11以上・26以上
TypeScript 5.1以上 5.4.0以上 5.9以上
スキーマ schema.prisma schema.prisma contract.prisma(7のschemaも読める)
クライアント @prisma/client(Rustエンジン) 生成したPrismaClient+ドライバアダプタ @prisma/orm-postgres等から作るdb
生成コマンド prisma generate prisma generate prisma contract emit
モジュール形式 CommonJS中心 ESM ESM
MongoDB 対応 非対応(6.19を使う) 早期アクセス

Prisma 6の要件はnpmに登録されたenginesとpeerDependencies(6.19.3)、7は7への移行ガイド、8はリリース状況ページの記載です。

Prisma 6から7へアップグレードする手順

Prisma 6から7への移行に伴う破壊的変更

  • generatorの変更:providerをprisma-client-jsからprisma-clientにし、outputを必ず書く。新しいprisma-clientでは生成先をoutputで指定し、従来のようにnode_modulesへ自動生成する構成から変更する。
  • 直接接続にはドライバアダプタが必須:DBへ直接接続する場合は、アダプタをPrismaClientに渡す。Accelerateを使っている場合は、アダプタではなくaccelerateUrlとAccelerate拡張を使う。ただしスタンドアロンのAccelerateは2026年12月1日に終了するため、この構成は一時しのぎになる。接続プールの既定値は下のドライバに従い、pgは接続タイムアウトが0(無制限)で、v6の5秒とは違う。
  • 設定はprisma.config.tsへ:接続URL・スキーマの場所・マイグレーションとシードの設定を移す。.envは自動で読まれないのでdotenvで読み込む。
  • ESM化:package.jsonに"type": "module"を書き、tsconfigを"module": "ESNext"にする。
  • CLIの挙動:migrate devとdb pushはgenerateを自動実行せず、migrate dev後の自動シードも無くなった。--skip-generateと--skip-seedは削除された。
  • 削除されたAPI:prisma.$use()のミドルウェアはClient Extensionsへ置き換える。Metricsのプレビュー機能も削除された。
  • MongoDBは移行不可:7はMongoDBに対応していない。公式は6.19を使い続けるよう案内している。

SQLiteで確認したPrisma 7への移行手順(抜粋)

既存のSQLiteプロジェクトで変える箇所だけを抜き出しています。Prisma 7.10.1とSQLiteで、Userモデル1つと.envのDATABASE_URL="file:./dev.db"を用意し、db push→generate→upsertまで実行して確かめました。既存のmodel定義はそのまま残します。まずパッケージを上げ、generatorを書き換えます。

npm install --save-dev prisma@7
npm install @prisma/client@7 @prisma/adapter-better-sqlite3@7 dotenv
npm install --save-dev tsx
generator client {
  provider = "prisma-client"
  output   = "../generated/prisma"
}

datasource db {
  provider = "sqlite"
}

次に、プロジェクト直下(package.jsonと同じ場所)にprisma.config.tsを置きます。datasourceのurlはスキーマではなくここに書きます。

import "dotenv/config";
import { defineConfig, env } from "prisma/config";

export default defineConfig({
  schema: "prisma/schema.prisma",
  migrations: { path: "prisma/migrations" },
  datasource: { url: env("DATABASE_URL") },
});

最後に、クライアントの読み込み元を生成先に変え、アダプタを渡します。DBへの反映のあとはnpx prisma generateを自分で実行します。

import "dotenv/config";
import { PrismaClient } from "./generated/prisma/client";
import { PrismaBetterSqlite3 } from "@prisma/adapter-better-sqlite3";

const adapter = new PrismaBetterSqlite3({ url: process.env.DATABASE_URL! });
const prisma = new PrismaClient({ adapter });

この構成でnpx prisma db push、npx prisma generate(「Generated Prisma Client (7.10.1)」と表示)、tsxでの実行の順に進め、upsertしたレコードが返ることを確認しました。手順の全体は公式の7への移行ガイドにあります。

データベース別のドライバアダプタ(Prisma 7)

Prisma 7では、DBごとにアダプタのパッケージを入れ、そのクラスをPrismaClientに渡します。アダプタの版はPrisma本体と揃えます(いずれもlatestは7.10.1)。

データベース アダプタのパッケージ クラス
PostgreSQL @prisma/adapter-pg PrismaPg
MySQL・MariaDB @prisma/adapter-mariadb PrismaMariaDb
SQLite @prisma/adapter-better-sqlite3 PrismaBetterSqlite3

PostgreSQLではconnectionStringを渡します。通常のMySQL接続にも@prisma/adapter-mariadbを使います。PlanetScaleのHTTP接続には、別途@prisma/adapter-planetscaleがあります。

import { PrismaClient } from "./generated/prisma/client";
import { PrismaPg } from "@prisma/adapter-pg";

const adapter = new PrismaPg({ connectionString: process.env.DATABASE_URL });
const prisma = new PrismaClient({ adapter });

Supabaseのように接続文字列が2本ある環境では、どちらをprisma.config.tsに書くかで迷います。SupabaseにPrismaとDrizzleをつなぐ:接続文字列とマイグレーション二重管理の設計で整理しています。

Prisma 7から8への移行条件と未対応機能

Prisma 7・8のCLIコマンド対応表

8のCLIは、コントラクト(contract)・接続先DB(db)・マイグレーションファイル(migration)の3つでコマンドを分けています。公式の対応表から、よく使うものを抜き出しました。

Prisma 7 Prisma 8
prisma generate prisma contract emit
prisma migrate dev prisma db update、またはmigration plan→db migrate
prisma migrate deploy prisma db migrate
prisma db push 空DBはprisma db init、以降はdb update。既存7のDBは移行ガイドに従う
prisma db pull prisma contract infer
prisma format prisma contract format
prisma db seed なし(tsx等でスクリプトを直接実行)
prisma studio プロジェクト外でnpx prisma@7 studio --url 接続URL
prisma -v prisma --version

8にまだ無い機能と対応DB

RCの時点で、8には次の機能がありません。7のコードでこれらを使っていれば、8では書き換えが要ります。

  • $extends(ミドルウェアで置き換え)、JSON列の中身での絞り込み、increment/decrement、ほとんどのネストした書き込み、トランザクション分離レベルの指定、P2002形式のエラーコード
  • findUniqueOrThrow/findFirstOrThrow(.first()とnull判定で代用)

対応DBは、PostgreSQLがRC、MongoDBが早期アクセス、SQLiteが実験的という段階です。MySQLは「次に予定」、MariaDB・SQL Server・CockroachDBは8用のライブラリがまだありません。

どのバージョンを選ぶか:データベース別の判断

番号の新しさではなく、使っているDBと、8の正式版が出たかどうかで決めます。2026年10月時点の判断は次のとおりです。

  • MySQL・MariaDB・SQL Server・CockroachDB:Prisma 7一択。8にライブラリが無く、7は8の正式版から18か月保守される。^7で固定して待つ。
  • PostgreSQL(既存アプリ):7のまま運用し、8の正式版が出てから@prisma/prisma7で並行させて移る。$extendsやJSONフィルタを多用しているなら、8で代わりの手段が揃うまで動かない。
  • PostgreSQL(新規):公式READMEは「New projects should start here」と8を勧めている。ただしRCの間は版を上げるたびに破壊的変更があり得るので、本番の期日がある案件なら7で始めるほうが安全。
  • MongoDB:最も判断が難しい。7は非対応で、6.19のセキュリティパッチは2026年11月19日に終わり、8は早期アクセスでトランザクションがまだ無い。期限後も6.19に留まるなら、パッチが出ない前提で依存関係を自分で監視する必要がある。

どのDBの場合も、避けたいのはpackage.jsonの版指定が"latest"や"*"になっている構成です。ロックファイルがない場合や依存関係を再解決する場合には、意図せず別メジャーのCLIが入る可能性があります。ORMの乗り換えまで検討する場合は、TypeORMとPrismaを比較|2026年版の違いと選び方(型安全・マイグレーション・パフォーマンス)やDrizzle ORM(ドリズル)とは?使い方・Prismaとの比較・v1.0 RCの変更点【2026年9月】で比べられます。DBの移行やスキーマ設計を含めて相談したい場合は、データベース設計・移行支援で対応しています。

よくある質問

Prismaの最新バージョンはどれですか?

安定版は7.10.1(2026年10月15日公開)です。npmのprismaのlatestタグはPrisma 8のRC(2026年10月16日時点で8.0.0-rc.23)を指していますが、これは正式版ではありません。最新の状態はnpm view prisma dist-tagsで確認できます。

Prisma 8(v8)の正式版はいつ出ますか?

公式のリリース状況ページは2026年10月の見込みとしていますが、GitHubのREADMEは「4〜8週間以内」と書いていて、日付は確定していません。正式版が出ると、Prisma 7の保守期間(18か月)の起点になります。

Prisma 7とPrisma 8の違いは何ですか?

8はTypeScriptで作り直された新しいORMで、PrismaClientの生成をやめ、データベースごとのライブラリからdbを作る形に変わりました。コマンドもgenerateがcontract emitに、migrate devがdb updateになるなど名前が変わっています。対応DBは、RCの時点ではPostgreSQLとMongoDB(早期アクセス)が中心です。

Prisma 6のサポートはいつまでですか?

Prisma 6はセキュリティパッチだけを2026年11月19日まで受け取ります(Prisma 7の公開から12か月)。それ以降は更新が出ないため、MongoDB以外の構成は7への移行を進めてください。

Prisma 7はMySQLで使えますか?

使えます。@prisma/adapter-mariadbをインストールし、PrismaMariaDbをPrismaClientに渡します。一方、Prisma 8のRCにはMySQL用のライブラリがまだ無いため、MySQLの案件は7に固定してください。

関連記事

お気に入りに入れた記事の一覧

一創の公式 SNS

X では毎朝の新着記事と IT ニュースの速報を、YouTube・TikTok・Instagram・LinkedIn・Facebook では記事の解説動画を配信しています。

この記事は以下の記事からリンクされています

資料請求

今日のトレンド記事 直近 24 時間で、いつもより多く読まれている記事

  1. 2026.11.09 テックブログ エディオン不正アクセス第2報:カード番号の対象確認とログ・決済画面の改ざん対策
  2. 2026.11.09 テックブログ LANSCOPE不正アクセス第2報:製品への影響と偽連絡の確認、停止中のライセンス認証の窓口
  3. 2026.11.10 テックブログ Claude Fable 5.2とは:料金・破壊的変更4点とFable 5.1からの移行手順【2026年11月】
  4. 2026.11.10 テックブログ ニトリの情報漏洩:最大3,762万件の対象確認となりすまし連絡の見分け方
  5. 2025.04.30 テックブログ IMSIキャッチャー(偽基地局)とは?2Gフォールバックの手口と日本での対策

RELATED POSTS 関連記事

目次