既存のプロジェクトにPrisma ORMを追加する(TypeScriptとPlanetScale)
既存のNode.jsまたはTypeScriptプロジェクトにPrisma ORMを追加し、データベースに接続してデータベースアクセス用のPrisma Clientを生成する方法を学びましょう。このチュートリアルでは、Prisma CLI、Prisma Client、およびPrisma Introspectionについて説明します。
他のORMからPrisma ORMへ移行する場合は、TypeORMからの移行またはSequelizeからの移行のガイドを参照してください。
前提条件
このガイドを成功裏に完了するには、以下が必要です。
- `package.json`を含む既存のNode.jsプロジェクト
- Node.jsがお使いのコンピュータにインストールされていること(公式にサポートされているバージョンについてはシステム要件を参照)
- 動作しているPlanetScaleデータベースサーバーと、少なくとも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 Schemaファイルを作成し、Prisma ORMプロジェクトをセットアップします。
npx prisma init --datasource-provider mysql --output ../generated/prisma
このコマンドはいくつかの処理を実行します。
- `prisma`という新しいディレクトリを作成し、その中に`schema.prisma`というファイルを作成します。このファイルには、データベース接続変数とスキーマモデルを含むPrisma Schemaが含まれます。
- `datasource`を以下に設定します。MySQLそして出力をそれぞれカスタムの場所に設定します。
- プロジェクトのルートディレクトリに`.env`ファイルを作成します。これは環境変数(データベース接続など)を定義するために使用されます。
`prisma init`によって作成されるデフォルトのスキーマは、`provider`としてPostgreSQLを使用することに注意してください。`datasource-provider`オプションでプロバイダーを指定しなかった場合、代わりに`mysql`プロバイダーを使用するように`datasource`ブロックを編集する必要があります。
datasource db {
provider = "mysql"
url = env("DATABASE_URL")
}