postgres-drizzle について
PostgreSQLとDrizzle ORMを使う開発向けのデータベース作業ガイドです。スキーマ、クエリ、マイグレーションを扱う開発者に、導入済みのバージョンやドライバー、適用先に基づく確認を促します。
主な機能
- 01テーブルと制約設計の指針
- 02クエリ、トランザクション、関係の解説
- 03マイグレーション生成と適用の説明
- 04パフォーマンス診断の指針
- 05テーマ別リファレンス
活用シーン
- 01データベースクエリの作成やレビュー
- 02スキーマ変更用マイグレーションの準備
- 03クエリプランを使った性能調査
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ ccheney/ robust-skills --skill postgres-drizzleインストール後、Claude Code で/postgres-drizzleを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/CHEATSHEET.mdMIGRATIONS.mdPERFORMANCE.mdPOSTGRES.mdQUERIES.mdRELATIONS.mdSCHEMA.md詳細
PostgreSQL と Drizzle ORM
データベース作業は、プロジェクトにインストールされている API とデプロイ環境に合わせてください。ユーザーの明示的な指示は、このスキルのガイドラインより優先されます。
データベースの契約を確認する
関連するスキーマ/クエリ、マイグレーション履歴、および要求された動作を入力として使用してください。Drizzle のコードでは、インストールされている drizzle-orm/drizzle-kit のバージョンとドライバーを確認してください。SQL では、バージョン固有の機能が重要になる場合、PostgreSQL のバージョンを確認してください。
このリファレンスでは PostgreSQL 17/18 を扱い、Drizzle の 0.x の relations() API と v1 の defineRelations() API を区別しています。両者を混在させたり、npm の dist-tag からインストール済みの API を推測したりしないでください。バージョンが不明な場合は、バージョンに依存するコードを提示する前に、インポートやロックファイルを確認するか、不足しているバージョンを尋ねてください。
変更の一貫性を保つ
- データベースの外部キーは ORM のリレーションメタデータとは別に宣言してください。NULL 許容性、一意性、削除時の動作を実際の関係に合わせてください。
- トランザクション内のすべてのステートメントで、トランザクションハンドルを使用してください。外側の接続を通じてクエリを実行すると、トランザクションの対象外になることがあります。
- クエリプランとワークロードの根拠から、遅いクエリを診断してください。参照列へのインデックスを検討してください。PostgreSQL はこれらを自動で作成しません。
- スキーマ変更のマイグレーション SQL を生成し、確認してください。適用済みのマイグレーション履歴を保持し、その後の変更には新しいマイグレーションを使用してください。
- マイグレーションまたは
pushを適用する前に、対象を確認してください。SQL の作成やレビュー自体は、データベースに対して実行する必要はありません。ユーザーがすでに対象と操作を許可している場合は、実行を続けてください。 EXPLAIN ANALYZEは、書き込みを含めてクエリを実行するものとして扱ってください。実行が作業の範囲外である場合は、適切なテスト対象を使うか、実行を伴わないプランを使用してください。
互換性に関する前提と関連する検証を添えて、要求された SQL/コード、マイグレーション、または診断結果を提示してください。実行を求められているものの対象が不明な場合は、変更を準備し、不足している対象だけを尋ねてください。
リファレンス
現在の作業に必要なトピックを参照してください。
| タスク | リファレンス |
|---|---|
| テーブル、型、制約、インデックス、生成列 | SCHEMA.md |
| 読み取り、書き込み、結合、トランザクション、準備済みクエリ | QUERIES.md |
| リレーションシップとバージョン固有のリレーショナルクエリ API | RELATIONS.md |
| drizzle-kit の設定、マイグレーション生成、ロールアウト | MIGRATIONS.md |
| PostgreSQL の機能、RLS、パーティショニング、JSONB、全文検索 | POSTGRES.md |
| クエリプラン、インデックス、プーリング、ページネーション、一括処理 | PERFORMANCE.md |
| 簡潔な構文や接続設定の確認 | CHEATSHEET.md |
インストール済みのプロジェクトとリファレンスで確認できない API やサポートについては、バージョンに合った Drizzle および PostgreSQL のドキュメントを参照してください。