v6.6.0 Prisma ORMリリースには、エキサイティングな機能が満載です。新しいジェネレーターによるESMサポート、Cloudflare D1およびTursoマイグレーションのEarly Accessサポート、お気に入りのAIツールでデータベースを直接管理するためのMCPサーバーなどです。
Prisma ORM v6.6.0 がリリースされました
ORMマニフェストを公開して以来、私たちは着実にPrisma ORMに意味のある改善を加えてきました。v6.6.0では、ESMサポートや、D1およびTursoデータベースへのスキーマ変更のプッシュの初期バージョンなどの待望の機能を実現しました。
より柔軟なprisma-client
ジェネレーターによるESMサポート(Early Access)
より柔軟で、ESMサポートを備え、現在のprisma-client-js
ジェネレーターとの摩擦の原因となる可能性のあるマジックな動作を排除した、新しいprisma-client
ジェネレーターをご紹介します。
主な違いは以下のとおりです
output
パスが必要です。もはやnode_modules
への「マジック」生成はありませんmoduleFormat
フィールドを介してESMとCommonJSをサポート- アプリケーションコードの残りの部分と同じようにバンドルされるプレーンなTypeScriptを出力します。これにより、アプリケーションのバンドルについてより多くの制御と柔軟性が得られます
以前にプロジェクト設定でPrisma ORMに問題が発生した場合(例:モノレポ、Next.js、Viteなど)、この新しいジェネレーターはワークフローを大幅に改善すると考えています。ぜひ試してみて、ご意見をお聞かせください!
Prismaスキーマで新しいprisma-client
ジェネレーターを使用する方法は次のとおりです
このジェネレーターには、runtime
、generatedFileExtension
、importFileExtension
などのフィールドも増えており、生成されたPrisma Clientコードを特定のプロジェクトニーズに適応させるのに役立ちます。
アプリケーションでは、生成されたフォルダーからPrismaClient
コンストラクター(およびその他すべて)をインポートできます
現時点では、コンパイル済みのクエリエンジンバイナリが別のマシン(異なるOS)でアプリを実行する場合に互換性の問題を引き起こす可能性があるため、生成された'./generated/prisma'
フォルダーを.gitignore
に追加してバージョン管理から除外することをお勧めします
私たちはprisma-client
ジェネレーターをprisma-client-js
と比較してよりモダンなバージョンと見なしており、Prisma 7の次のメジャーバージョンインクリメントでデフォルトのジェネレーターにする予定です。以下は、追加を計画しているさらにエキサイティングな機能の一部です
- 生成されたPrisma Clientファイルを分割して、生成された長いファイルによるコードエディターの速度低下を回避します
- Prisma Postgresを使用する場合、Accelerate拡張機能は不要になります
LLM経由でPrisma Postgresを管理するMCPサーバー(プレビュー)
Prisma Postgresは、コールドスタートのない最初のサーバーレスデータベースです。最適な効率と高性能を実現するように設計されており、Cursor、Windsurf、Lovable、co.devなどのAIツールと組み合わせて使用するのに最適なデータベースです。今回のリリースでは、お気に入りのAI開発環境に統合できるPrisma MCPサーバーを起動するコマンドを追加しました。
MCPサーバーのおかげで、次のことができるようになりました
- AIエージェントに新しいDBインスタンスを作成するように指示する
- データモデルを設計する
- データベースのマイグレーションについてチャットする
…その他多数。
開始するには、お気に入りのAIツールのMCP構成にこのスニペットを追加してください
Cloudflare D1およびTurso/LibSQLマイグレーション(Early Access)
Cloudflare D1およびTursoは、どちらもSQLiteに基づいた人気のあるデータベースプロバイダーです。それぞれのドライバアダプターを使用してPrisma ORMでクエリできますが、以前のバージョンのPrisma ORMでは、これらのデータベースに対してスキーマ変更を行うことができませんでした。
本日のリリースでは、D1およびTursoのネイティブマイグレーションサポートの最初のEarly Accessバージョンと、以下のコマンドを共有します
prisma db push
:Prismaスキーマに基づいてリモートデータベースのスキーマを更新しますprisma db pull
:リモートデータベースのスキーマをイントロスペクトし、ローカルPrismaスキーマを更新しますprisma migrate diff
:リモートデータベースのスキーマとローカルPrismaスキーマの違いを出力します
注:
prisma migrate dev
およびprisma migrate deploy
のサポートが進行中であり、間もなく提供されます!
これらのコマンドを使用するには、prisma.config.ts
ファイルでドライバアダプターを使用して、Prisma CLIをD1またはTursoインスタンスに接続する必要があります。以下はD1の例です
その設定で、次のコマンドを実行してD1インスタンスに対してスキーマ変更を実行できるようになりました
詳細については、ドキュメントを参照してください
prisma init
の新しい--prompt
オプション
--prompt
オプションをprisma init
コマンドに渡して、Prismaスキーマをスキャフォールドし、新しいPrisma Postgresインスタンスにデプロイできるようになりました
ソーシャルメディアのトレンドを追っているすべての人向けに、--vibe
というエイリアスも作成しました😎
Prisma ORMの未来はエキサイティングです
これはほんの始まりにすぎません。今後数週間から数か月の間に、Prisma ORMにさらにエキサイティングな機能が追加される予定です。次の予定の概要については3か月ロードマップを確認するか、変更ログ(RustからTypeScriptへの移行によって得られたパフォーマンスの向上など)で最新の開発状況を把握してください。
このリリースについてのご意見をXとDiscordでお知らせください。また、今後のエキサイティングな情報を逃さないように、フォローしてください!
次回の投稿をお見逃しなく!
Prismaニュースレターに登録する