> database-postgresql

Data access patterns, scaling, migrations, and ORM selection for PostgreSQL. (triggers: **/*.entity.ts, prisma/schema.prisma, **/migrations/*.sql, TypeOrmModule, PrismaService, PostgresModule)

fetch
$curl "https://skillshub.wtf/HoangNguyen0403/agent-skills-standard/database-postgresql?format=md"
SKILL.mddatabase-postgresql

PostgreSQL Database Standards

Priority: P0 (FOUNDATIONAL)

Integration patterns and ORM standards for PostgreSQL applications.

Patterns & Architecture

  • Repository Pattern: Isolate database logic. Use @InjectRepository() or PrismaService.
  • Relationship Integrity: Avoid redundant raw ID columns. Favor relation properties.

Migrations (Strict Rules)

  • NEVER use synchronize: true in production.
  • Generation: Modify .entity.ts -> run pnpm migration:generate.
  • Zero-Downtime: Use Expand-Contract pattern (Add -> Backfill -> Drop) for destructive changes.
  • RLS: typeorm migration:generate cannot detect Row-Level Security. Use raw queryRunner.query() SQL for RLS.

Performance & Gotchas

  • Pagination: Mandatory. Use limit/offset or cursor-based pagination.
  • Indexing: Define indexes in code for frequently filtered columns. RLS columns MUST be indexed.
  • Transactions: Use QueryRunner or $transaction for multi-step mutations.

🚫 Anti-Patterns

  • N+1 Queries: Avoid lazy-loading relations inside loops. Use query builders.
  • Complex RLS Subqueries: Avoid heavy JOINs inside RLS definitions.

References

┌ stats

installs/wk0
░░░░░░░░░░
github stars341
██████████
first seenMar 17, 2026
└────────────

┌ repo

HoangNguyen0403/agent-skills-standard
by HoangNguyen0403
└────────────

┌ tags

└────────────