Drizzle ORMのVercel Postgres接続概要
Vercel Postgresは、Vercelのサーバーレス環境で最適化されたSQLデータベースサービスで、主にVercel Functionsと連携して使用されます。Drizzle
ORMは、このVercel Postgresとの接続をdrizzle-orm/vercel-postgres
ドライバーでサポートし、サーバーレス環境でも効率的にデータベース操作が可能です。本記事では、Vercel PostgresにDrizzle
ORMを利用して接続するための基本的な設定方法を詳しく解説します。
Vercel Postgres接続の基本設定
ステップ1:パッケージのインストール
Drizzle
ORMとVercel Postgresのドライバーである@vercel/postgres
をインストールします。開発ツールとしてdrizzle-kit
も併せてインストールします。
npm install drizzle-orm @vercel/postgres
npm install -D drizzle-kit
ステップ2:Vercel Postgresのセットアップ
Vercel Postgresの利用には、Vercelダッシュボードからプロジェクトとデータベースをセットアップする必要があります。Vercelの公式ドキュメントに従って、接続情報や環境変数を設定してください。
ステップ3:ドライバーの初期化とクエリの実行
Drizzle
ORMを使用したVercel Postgresへの接続は、drizzle()
関数を使うだけで簡単に設定できます。設定した環境変数を使用し、データベースに接続します。
import { drizzle } from 'drizzle-orm/vercel-postgres';
const db = drizzle();
const result = await db.execute('SELECT 1');
上記のように、drizzle()
関数で接続を初期化し、クエリを実行することができます。Vercel Postgresの環境変数は自動的に読み込まれるため、特別な設定は不要です。
既存のクライアントを利用した接続
Vercel Postgresで既に@vercel/postgres
のクライアントを使用している場合、そのクライアントをDrizzle
ORMに渡して利用することも可能です。
import { sql } from '@vercel/postgres';
import { drizzle } from 'drizzle-orm/vercel-postgres';
const db = drizzle({ client: sql });
const result = await db.execute('SELECT 1');
この方法では、Vercel Postgresクライアントで設定済みの接続を再利用できます。
Vercel PostgresとDrizzle
ORMの利用環境
Vercel Postgresは、サーバーレス環境向けに最適化されており、Vercel Functionsなどでの利用が推奨されています。Vercelのサーバーレスドライバーにより、TCP接続が不要であり、Cloudflare Workersなどのサーバーレスプラットフォームでも直接接続が可能です。
サーバーフル環境での利用方法
Vercel Postgresは、サーバーレス環境以外のサーバーフル環境でも利用できます。サーバーフル環境での接続には、@vercel/postgres
のドライバーを使うか、PostgreSQLの標準接続URLを使用します。
まとめ
Drizzle
ORMは、Vercel Postgresと組み合わせることで、Vercel Functionsやサーバーレス環境でのデータベース操作を簡単に実現できます。サーバーレス環境でのシンプルかつ高性能な接続を提供するDrizzle
ORMのVercel Postgresドライバーを活用し、効率的なデータベース操作を実現しましょう。