postgresql-core-schema
Installation
SKILL.md
PostgreSQL Core & Schema
When to use this skill
- Creating or modifying PostgreSQL tables (DDL).
- Working with JSONB, Arrays, or specialized Postgres types.
- Creating triggers or functions (PL/pgSQL).
1. Data Types
- Timestamps: Always use
timestamptz(Timestamp with Time Zone), rarelytimestamp(without TZ). - Text: Use
textinstead ofvarchar(n)unless a strict limit is architecturally required. - JSON: Use
jsonb(binary) for storage and indexing, notjson. - Primary Keys:
bigint GENERATED ALWAYS AS IDENTITYoruuid(v4/v7).
2. Constraints & Integrity
- Check Constraints: Use
CHECKconstraints generously (e.g.,CHECK (price > 0)). - Foreign Keys: Index all FK columns manually (Postgres does not auto-index them).
- Exclusion Constraints: Use where
UNIQUEis not enough (e.g., non-overlapping time ranges).