既存のJavaScriptプロジェクトにPrisma ORMを追加する (PostgreSQL)
既存のNode.jsまたはTypeScriptプロジェクトにPrisma ORMを追加し、データベースに接続してデータベースアクセス用のPrisma Clientを生成する方法を学びます。このチュートリアルでは、Prisma CLI、Prisma Client、およびPrisma Introspectionについて紹介します。
他のORMからPrisma ORMに移行する場合は、TypeORMからの移行またはSequelizeからの移行ガイドを参照してください。
前提条件
このガイドを正常に完了するには、以下が必要です。
package.json
を含む既存のNode.jsプロジェクト- Node.jsがお使いのマシンにインストールされていること (公式にサポートされているバージョンについては、システム要件を参照してください)
- PostgreSQLデータベースサーバーが動作しており、少なくとも1つのテーブルを持つデータベース
正確なバージョン要件については、システム要件を参照してください。
データベースの接続URL(認証情報を含む)を手元に用意してください!データベースサーバーが動作しておらず、Prisma ORMを試してみたいだけであれば、クイックスタートをご覧ください。
Prisma ORMをセットアップする
最初のステップとして、package.json
ファイルがあるプロジェクトディレクトリに移動します。
次に、Prisma CLIを開発依存関係としてプロジェクトに追加します。
npm install prisma --save-dev
プロジェクトにpackage.json
ファイルを含む複数のディレクトリ(例:frontend
、backend
など)がある場合、Prisma ORMは特にAPI/バックエンド層での使用を想定して設計されていることに注意してください。Prismaをセットアップするには、関連するpackage.json
ファイルが含まれる適切なバックエンドディレクトリに移動し、そこでPrismaを設定してください。
これで、npx
をプレフィックスとして付けてPrisma CLIを呼び出すことができます。
npx prisma
別のパッケージマネージャーを使用してPrisma ORMをインストールする方法については、インストール手順を参照してください。
次に、以下のコマンドでPrismaスキーマファイルを作成し、Prisma ORMプロジェクトをセットアップします。
npx prisma init --datasource-provider postgresql --output ../generated/prisma
このコマンドはいくつかのことを行います。
prisma
という新しいディレクトリを作成し、その中にschema.prisma
というファイルが作成されます。このファイルには、データベース接続変数とスキーマモデルを含むPrismaスキーマが含まれます。datasource
を以下に設定します。PostgreSQLおよび出力をそれぞれカスタムの場所に設定します。- プロジェクトのルートディレクトリに
.env
ファイルを作成します。これは、環境変数(データベース接続など)を定義するために使用されます。
prisma init
によって作成されるデフォルトのスキーマでは、provider
としてPostgreSQLが使用されることに注意してください。datasource-provider
オプションでプロバイダーを指定しなかった場合は、代わりにpostgresql
プロバイダーを使用するようにdatasource
ブロックを編集する必要があります。
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}