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

Prisma Postgresでクイックスタート

このクイックスタートガイドでは、プレーンなTypeScriptプロジェクトでPrisma ORMとPrisma Postgresデータベースをゼロから使い始める方法を学びます。以下のワークフローについて説明します。

注意

Prisma Postgresを他のORMやデータベースライブラリ(Drizzle ORM、TypeORM、Kyselyなど)と使用したい場合は、こちらの手順に従ってください。

前提条件

このチュートリアルを完了するには、以下が必要です。

  • a(PDP)アカウント
  • マシンにNode.jsがインストールされていること(公式サポートされているバージョンについてはシステム要件を参照)

1. プラットフォームコンソールでPrisma Postgresデータベースをセットアップ

Prisma Postgresデータベースを作成するには、以下の手順に従ってください。

  1. ログインしてコンソールを開きます。
  2. 任意のワークスペースで、New projectボタンをクリックします。
  3. Nameフィールドにプロジェクトの名前を入力します(例: hello-ppg)。
  4. Prisma Postgresセクションで、Get startedボタンをクリックします。
  5. Regionドロップダウンで、現在地から最も近いリージョンを選択します(例: US East (N. Virginia))。
  6. Create projectボタンをクリックします。

この時点で、Databaseページにリダイレクトされ、データベースのステータスがPROVISIONINGからCONNECTEDに変わるまで数秒待つ必要があります。

緑色のCONNECTEDラベルが表示されたら、データベースを使用する準備が整いました!

2. サンプルをダウンロードして依存関係をインストール

コンソールに表示されているtry-prismaコマンドをコピーし、ターミナルに貼り付けて実行します。

参考として、コマンドは次のようになります。

npx try-prisma@latest \
--template databases/prisma-postgres \
--name hello-prisma \
--install npm

try-prismaコマンドが終了したら、プロジェクトディレクトリに移動します。

cd hello-prisma

3. データベース接続URLを設定

データベースへの接続は、.envファイル内の環境変数で設定されます。

まず、既存の.env.exampleファイルを.envにリネームします。

mv .env.example .env

次に、プラットフォームコンソールのプロジェクト環境で、Set up database accessセクションにあるデータベース認証情報を見つけ、DATABASE_URL環境変数をコピーして.envファイルに貼り付けます。

参考として、ファイルは次のようになります。

DATABASE_URL="prisma+postgres://accelerate.prisma-data.net/?api_key=ey...."

4. データベーステーブルを作成する(スキーママイグレーションを使用)

次に、データベースにテーブルを作成する必要があります。これは、Prisma CLIの以下のコマンドでスキーママイグレーションを作成および実行することで行えます。

npx prisma migrate dev --name init

これにより、Prismaスキーマで定義されたUserおよびPostモデルがデータベースにマッピングされます。新しく作成されたprisma/migrationsディレクトリで、実行されてテーブルを作成したSQLマイグレーションを確認することもできます。

5. Prisma ORMでクエリを実行

src/queries.tsスクリプトには、データベースにデータを書き込み、読み取るCRUDクエリが多数含まれています。ターミナルで以下のコマンドを実行して実行できます。

npm run queries

スクリプトが完了したら、ターミナルでログを確認したり、Prisma Studioを使用してデータベースにどのようなレコードが作成されたかを確認したりできます。

npx prisma studio

6. Prisma Accelerateでキャッシュを試す

src/caching.tsスクリプトには、Prisma Accelerateを使用してデータベースクエリをキャッシュするためのStale-While-Revalidate (SWR) と Time-To-Live (TTL) を使用するサンプルクエリが含まれています。次のように実行できます。

npm run caching

クエリの実行にかかった時間(例: )に注目してください。

The query took 2009.2467149999998ms.

次に、スクリプトを再度実行します。

npm run caching

今回はクエリにかかる時間がはるかに短くなることに気づくでしょう(例: )

The query took 300.5655280000001ms.

7. 次のステップ

このクイックスタートガイドでは、プレーンなTypeScriptプロジェクトでPrisma ORMを使い始める方法を学びました。findManyクエリにフィルタリング、ソート、ページネーションオプションを含めたり、updatedeleteクエリなどのより多くの操作を試したりして、Prisma Client APIを自由に探索してみてください。

Prisma Studioでデータを探索する

Prisma ORMには、データベース内のデータを表示および編集するための組み込みGUIが付属しています。以下のコマンドを使用して開くことができます。

npx prisma studio

Prisma Postgresを使用すると、内部でPrisma Studioを直接使用することもできます。プロジェクトのStudioタブを選択します。

Next.jsでフルスタックアプリを構築する

フルスタックアプリでPrisma Postgresを使用する方法を学ぶ

すぐに実行できるPrisma ORMの例を探索する

GitHubのprisma-examplesリポジトリをチェックして、Prisma ORMがお好みのライブラリでどのように使用できるかを確認してください。このリポジトリには、Express、NestJS、GraphQLの例に加え、Next.jsやVue.jsを使用したフルスタックの例など、多数の例が含まれています。

これらの例はデフォルトでSQLiteを使用しますが、プロジェクトのREADMEに記載されている手順に従って、いくつかの簡単なステップでPrisma Postgresに切り替えることができます。


Prismaとつながる

とつながり、Prismaの旅を続けましょう。 活発なコミュニティに参加しましょう。最新情報を入手し、積極的に関わり、他の開発者と協力しましょう。

  • Xでフォロー アナウンス、ライブイベント、役立つヒントを得られます。
  • Discordに参加 質問したり、コミュニティと話したり、会話を通じて積極的なサポートを受けられます。
  • YouTubeで購読 チュートリアル、デモ、配信を視聴できます。
  • GitHubで交流 リポジトリにスターを付けたり、問題を報告したり、問題に貢献したりしてください。
皆様のご参加を心より歓迎し、コミュニティの一員としてお迎えできることを楽しみにしております!

© . All rights reserved.