Database Skill
Overview
Database design, Prisma ORM, migrations, and query optimization using SQLite (dev) and PostgreSQL (production).
When to Use
- •Modifying database schema or adding models
- •Writing database queries with Prisma
- •Creating migrations
- •Optimizing slow queries
- •Seeding database with initial data
Key Files
- •Guide:
DATABASE.md(in this directory) - •Schema:
prisma/schema.prisma - •Seed:
prisma/seed.ts - •Client:
lib/db.ts
Quick Commands
bash
npx prisma migrate dev --name <name> # Create migration npx prisma studio # Open database GUI npm run db:seed # Seed database npx prisma format # Format schema
Key Patterns
- •Use Prisma relations for data integrity
- •Add
@uniqueconstraints for email, slug - •Always set
@default()for timestamps - •Use Prisma relationships:
@relation()for foreign keys - •Query optimization: avoid N+1 with
includeorselect
Output
When generating code:
- •Update
prisma/schema.prismawith proper syntax - •Create migration file (or let Prisma generate)
- •Write type-safe Prisma queries
- •Include proper error handling
- •Add input validation before database calls