リレーショナルデータベース
データベースに接続し、データベースアクセスのためのPrisma Clientを生成することにより、既存のNode.jsまたはTypeScriptプロジェクトにPrisma ORMを追加する方法を学びます。次のチュートリアルでは、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
という名前の新しいディレクトリを作成します。 - データソースを以下に設定しますPostgreSQLそして、それぞれ出力先をカスタムロケーションに設定します。
- プロジェクトのルートディレクトリに
.env
ファイルを作成します。これは、環境変数(データベース接続など)を定義するために使用されます。
gitのようなバージョン管理を使用している場合は、生成されたクライアントをアプリケーションから除外するために、.gitignore
に1行追加することをお勧めします。この例では、generated/prisma
ディレクトリを除外します。
generated/prisma/
prisma init
によって作成されたデフォルトのスキーマは、プロバイダーとしてPostgreSQLを使用することに注意してください。datasource-provider
オプションでプロバイダーを指定しなかった場合は、代わりにpostgresql
プロバイダーを使用するようにdatasourceブロックを編集する必要があります
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}