リレーショナルデータベース (TypeScriptとPlanetScale)
Prisma ORM をデータベースに接続し、データベースアクセスのための Prisma Client を生成することで、Node.js または TypeScript プロジェクトをゼロから作成する方法を学びます。このチュートリアルでは、Prisma CLI、Prisma Client、および Prisma Migrate について紹介します。
前提条件
このガイドを正常に完了するには、以下のものが必要です。
- お使いのマシンに Node.js がインストールされていること(公式にサポートされているバージョンについては システム要件を参照)
- PlanetScale データベースサーバーが稼働していること
このチュートリアルでは、データベースの `main` ブランチにプッシュできることを前提としています。`main` ブランチが本番環境に昇格されている場合は、これを行わないでください。
正確なバージョン要件については、システム要件を参照してください。
データベースの 接続 URL を手元に用意しておいてください。データベースサーバーが稼働しておらず、Prisma ORM を試してみたいだけであれば、クイックスタートを参照してください。
プロジェクトのセットアップを作成する
まず、プロジェクトディレクトリを作成し、その中に移動します。
mkdir hello-prisma
cd hello-prisma
次に、TypeScript プロジェクトを初期化し、Prisma CLI を開発依存関係として追加します。
npm init -y
npm install prisma typescript tsx @types/node --save-dev
これにより、TypeScript アプリの初期設定を含む `package.json` が作成されます。
次に、TypeScript を初期化します。
npx tsc --init
異なるパッケージマネージャーを使用して Prisma をインストールする方法については、インストール手順を参照してください。
これで、`npx` をプレフィックスとして Prisma CLI を呼び出すことができます。
npx prisma
次に、以下のコマンドで 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` オプションでプロバイダーを指定しなかった場合は、`datasource` ブロックを編集して `mysql` プロバイダーを使用するように変更する必要があります。
datasource db {
provider = "mysql"
url = env("DATABASE_URL")
}