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