database-design

Name database tables and columns using domain concepts.

Updated Mar 31, 2026
One-click install
npx skills add https://github.com/efoo-team/skills --skill database-design-efoo-team
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: database-design
Source: https://github.com/efoo-team/skills/tree/main/skills/database-design
Command: npx skills add https://github.com/efoo-team/skills --skill database-design-efoo-team

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill helps you design database schemas that accurately reflect real-world concepts and entities, avoiding misleading names based on process or use-case specifics.

Core Features & Use Cases

  • Conceptual Naming: Guides users to name tables and columns based on domain concepts rather than transient application details.
  • Normalization Guidance: Assists in structuring databases to reflect true entities, relationships, and constraints, ensuring proper separation and integration.
  • Use Case: When creating a customer management system, use this Skill to name tables as 'customers' and 'addresses' based on real-world concepts, not temporary identifiers or process-specific terms.

Quick Start

Describe how to name a table storing user contact info to ensure the name reflects the domain concept rather than implementation details.

Frequently Asked Questions about database-design

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I name database tables and columns based on domain concepts instead of process-specific terms?

Conceptual database naming identifies tables and columns using stable domain entities like 'customers' or 'addresses' rather than transient application processes. This ensures schema names remain valid across different application layers and future modifications.

What is the best way to normalize a database schema to reflect true entity relationships?

Database normalization structures schemas to accurately reflect real-world entities, attributes, and relationships. Proper separation and integration of these elements ensures data integrity and reduces redundancy during conceptual design.

When do I need conceptual design for database schema development?

Conceptual database design is needed when creating systems like customer management platforms where tables must represent real-world concepts. It prevents misleading names based on temporary use-case specifics or implementation details.

How do I separate database entities and attributes during schema design?

Separating database entities and attributes involves structuring tables to represent distinct real-world objects and their properties. This conceptual clarity ensures proper normalization and accurate relationship mapping across the schema.

Why should database schema naming avoid process-specific implementation details?

Schema naming should avoid process-specific terms because they become invalid when application layers or workflows change. Domain-concept naming ensures the database schema remains stable and accurately reflects the real-world entities.