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

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

データベースに接続し、データベースアクセスのためのPrisma Clientを生成することにより、既存のNode.jsまたはTypeScriptプロジェクトにPrisma ORMを追加する方法を学びます。次のチュートリアルでは、Prisma CLIPrisma 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ファイルを持つ複数のディレクトリ(例:frontendbackendなど)が含まれている場合、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ディレクトリを除外します。

.gitignore
generated/prisma/

prisma initによって作成されたデフォルトのスキーマは、プロバイダーとしてPostgreSQLを使用することに注意してください。datasource-providerオプションでプロバイダーを指定しなかった場合は、代わりにpostgresqlプロバイダーを使用するようにdatasourceブロックを編集する必要があります

prisma/schema.prisma
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}