メインコンテンツへスキップ

データベース機能マトリックス

このページでは、Prisma ORMがサポートするデータベースによって提供される機能の概要を説明します。さらに、これらの各機能がPrisma ORMでどのように使用できるか、そして追加のドキュメントへのポインタも説明します。

リレーショナルデータベース機能

このセクションでは、現在Prisma ORMがサポートしているリレーショナルデータベースに存在するデータベース機能について説明します。Prisma schema列は、特定の機能がPrisma schemaでどのように表現できるかを示し、そのドキュメントへのリンクを提供します。データベース機能はPrisma schemaではまだ表現できない場合でも、Prisma Clientで使用できることに注意してください。

注記

これらの機能はリレーショナルデータベース専用です。MongoDBのようなNoSQLデータベースのサポートされている機能は、以下に記載されています

制約

制約サポートPrismaスキーマPrisma ClientPrisma Migrate
PRIMARY KEY✔️@id および @@id✔️✔️
FOREIGN KEY✔️リレーションフィールド✔️✔️
UNIQUE✔️*@unique および @@unique✔️✔️
CHECK✔️†まだ✔️まだ
NOT NULL✔️?✔️✔️
DEFAULT✔️@default✔️✔️

* Microsoft SQL ServerでUNIQUE制約を使用する場合の注意点 † MySQLのバージョン8以降のみでサポートされています

参照アクション(外部キー参照の削除および更新動作)

削除動作サポートPrismaスキーマPrisma ClientPrisma Migrate
CASCADE✔️✔️✔️✔️
RESTRICT✔️*✔️✔️✔️
NO ACTION✔️✔️✔️✔️
SET DEFAULT✔️✔️✔️✔️
SET NULL✔️✔️✔️✔️

* RESTRICTはMicrosoft SQL Serverではサポートされていません。

インデックス

インデックスサポートPrismaスキーマPrisma ClientPrisma Migrate
UNIQUE✔️@unique および @@unique✔️✔️
USINGPostgreSQLのみ✔️✔️
WHERE✔️まだ✔️まだ
(式)✔️まだ✔️まだ
INCLUDEPostgreSQLおよびMicrosoft SQL Serverのみまだ✔️まだ

USINGを介して指定されたアルゴリズム

インデックスタイプ(アルゴリズム)サポートPrismaスキーマPrisma ClientPrisma Migrate
B-tree✔️✔️†✔️まだ
Hash✔️✔️†✔️まだ
GiST✔️*✔️†✔️*まだ
GIN✔️*✔️†✔️*まだ
BRIN✔️*✔️†✔️*まだ
SP-GiST✔️*✔️†✔️*まだ
  • * MySQLおよびSQLiteではサポートされていません
  • † Prisma ORMバージョン4.0.0以降でPostgreSQLコネクタでのみ利用可能です。

その他

機能サポートPrismaスキーマPrisma ClientPrisma Migrate
自動インクリメントID✔️autoincrement()✔️✔️
配列PostgreSQLのみ[]✔️✔️
Enum✔️*†enum✔️✔️
ネイティブデータベース型✔️✔️✔️まだ
SQLビュー✔️まだまだまだ
JSONサポート✔️†✔️✔️✔️
あいまい/フレーズ全文検索✔️‡まだまだまだ
テーブル継承PostgreSQLおよびMicrosoft SQL Serverのみまだ✔️まだ
認証とユーザー管理✔️‡まだまだまだ
  • * Microsoft SQL Serverではサポートされていません
  • † JSONおよびEnum型はPrisma ORM 6.2.0以降のSQLiteでサポートされています。
  • ‡ SQLiteではサポートされていません

NoSQLデータベース機能

このセクションでは、現在Prisma ORMがサポートしているNoSQLデータベースに存在するデータベース機能について説明します。

MongoDB

以下の表は、一般的なMongoDB機能とPrisma ORMが提供するサポートレベルをリストしています。

機能Prisma ORMでサポート注記
埋め込みドキュメント✔️
トランザクション✔️
インデックス✔️ 注意点ありインデックスは、参照するフィールドに少なくともいくつかのデータが含まれている場合にのみイントロスペクションできます。
自動インクリメントIDいいえ
複合IDいいえMongoDBは複合ID(@@id)をサポートしていません
生成されたObjectId✔️参照:MongoDBのID定義
配列✔️
Enum✔️Prisma ORMレベルで実装
ネイティブデータベース型✔️参照:フィールドマッピングリファレンス
JSONサポート✔️高度なJsonフィールドフィルタリングはまだサポートされていません。
DBRefsいいえ
変更ストリームいいえ
アグリゲーションパイプラインへの直接アクセスいいえ
© . All rights reserved.