※備忘録用。誤った記載があるかもしれません。コメントで教えていただければ嬉しいです
今回利用するもの
-
PostgreSQL
リレーショナルデータベース(RDB)の作成や操作、管理ができるオープンソースのデータベース管理システム(DBMS)。
VercelではStrageタブから選択できる。

-
Prisma
Node.js ORMの1つ。ORM=Object-relational mapping
プログラミング言語のオブジェクトで定義したメソッドによって、SQLを書かずにデータベースの操作が可能なツール。
ORMについてはこちらの記事がわかりやすかったです。
PostgreSQLのセットアップ
Vercelのクイックスタートを参考に、Vercel PostgresとVercel CLIを追加
yarn add @vercel/postgres
yarn global add vercel@latest
vercel link
vercel env pull .env.development.local
※もしzsh: command not found: vercelと表示されたら、export PATH=$PATH:~/.yarn/binを実行しておく。
永続的な変更をするには、
PATH環境変数への変更を永続化するためには、~/.zshrcのexport PATHの末尾に:~/.yarn/binを追加
クイックスタート内の通りapp/api/create-pets-table/route.tsを作成して呼び出すと、VercelのPostgreSQLにpetsテーブルができていることが確認できる

Prismaのセットアップ
PrismaのGet Startedを参考に、セットアップを行う。
yarn add -D prisma ※自分はyarnを使っているので。また、typescript ts-node @types/nodeは既に追加済
npx prisma
npx prisma init
.envに、vercel上で確認できる環境変数が入っている状態にする

PrismaからVercel上のPostgreSQLにテーブル作成する
prisma/schema.prismaにデータモデルを定義。

npx prisma migrate dev --name init
migrationファイルの生成 + スキーマの変更が実行される
※以降、データモデル定義を変更した場合は、--name の後ろに変更内容をメモ的に入れて実行する。vercelのDBの_prisma_migrationsでメモを確認可能。
