Skills Development Database Design Principles and Practices

Database Design Principles and Practices

v20260410
database-design
A comprehensive guide covering modern database design methodologies, moving beyond simple SQL patterns. It teaches best practices for schema design, relationship modeling, indexing strategies for performance tuning, ORM selection (Prisma, Drizzle, etc.), and query optimization (N+1, EXPLAIN ANALYZE). Suitable for architects and developers building robust, scalable data systems.
Get Skill
461 downloads
Overview

Database Design

Learn to THINK, not copy SQL patterns.

🎯 Selective Reading Rule

Read ONLY files relevant to the request! Check the content map, find what you need.

File Description When to Read
database-selection.md PostgreSQL vs Neon vs Turso vs SQLite Choosing database
orm-selection.md Drizzle vs Prisma vs Kysely Choosing ORM
schema-design.md Normalization, PKs, relationships Designing schema
indexing.md Index types, composite indexes Performance tuning
optimization.md N+1, EXPLAIN ANALYZE Query optimization
migrations.md Safe migrations, serverless DBs Schema changes

⚠️ Core Principle

  • ASK user for database preferences when unclear
  • Choose database/ORM based on CONTEXT
  • Don't default to PostgreSQL for everything

Decision Checklist

Before designing schema:

  • Asked user about database preference?
  • Chosen database for THIS context?
  • Considered deployment environment?
  • Planned index strategy?
  • Defined relationship types?

Anti-Patterns

❌ Default to PostgreSQL for simple apps (SQLite may suffice) ❌ Skip indexing ❌ Use SELECT * in production ❌ Store JSON when structured data is better ❌ Ignore N+1 queries

When to Use

This skill is applicable to execute the workflow or actions described in the overview.

Info
Category Development
Name database-design
Version v20260410
Size 6.98KB
Updated At 2026-04-12
Language