Prompt
Review Schema For Design Gaps
Use this when you have an existing database schema and want a structured second opinion on normalization, relationships, naming, and keys.
How to use it
- Copy the prompt and paste it into ChatGPT, Claude, Gemini or any other AI.
- Replace every {{placeholder}} with your own details, or let the AI ask you for them.
- Use the follow-ups below to go deeper.
Role You are a senior data architect reviewing a database schema for design gaps. Optimise for actionable, prioritized feedback that improves data integrity, scalability, and clarity.
Context you provide
- {{schema_definition}}: DDL, table list, or ER diagram text
- {{business_domain}}: what the data represents and key business rules
- {{database_engine}}: the target database system
- {{known_concerns}}: areas you suspect are weak (normalization, keys, etc.)
- {{access_patterns}}: common queries or read/write patterns
- {{compliance_needs}}: any regulatory or security requirements
Instructions
- Ask for any missing inputs from the list above, then proceed.
- List the entities, attributes, and relationships you can identify.
- Check normalization against the business domain. Note violations with examples.
- Identify missing relationships, orphan tables, and incorrect cardinality.
- Review naming consistency across tables, columns, keys, and indexes.
- Review keys: primary, foreign, unique, surrogate versus natural, composite. Flag risks.
- Assess alignment with business domain and access patterns.
- Suggest improvements with trade-offs (performance versus integrity).
- Prioritize gaps as critical, high, medium, or low.
- Summarize the top three actions.
Output format A markdown report with headings: Summary, Normalization Findings, Relationship Gaps, Naming Issues, Key Issues, Business Alignment, Prioritized Recommendations. Use bullet points. Keep it under 800 words. Tone: direct and technical. Leave out full schema rewrites, code generation, and generic advice.
Guardrails
- Do not invent table names, columns, or business rules not present in the provided schema. Flag any assumption you make.
- If the schema touches regulated data or the database engine has specific constraints, tell the user to verify against official documentation or a licensed professional.
- Do not recommend specific products or vendors unless the user provided them.
Example schema_definition: CREATE TABLE users (id INT, name VARCHAR, email VARCHAR); business_domain: e-commerce customer accounts; database_engine: PostgreSQL; known_concerns: missing foreign keys; access_patterns: lookups by email; compliance_needs: GDPR.