Design a database schema
A normalised schema with tables, keys, relations, indexes, constraints and access rules.
This is a practical, copy-paste process for starting an app’s backend.. Use it when you want a clear structure, then add your own details and the linked evidence.
Published by Deepstory Research. Reviewed Sep 2026.
How to use this method
- 1. Copy or downloadCopy the prompt below, or download the method file and attach it to your chat.
- 2. Paste into any AIChatGPT, Claude, Gemini or Copilot. Replace each [PLACEHOLDER] with your details, or let the AI ask you.
- 3. Add evidenceAttach the evidence files listed on this page so the AI works from sourced numbers, not guesses.
The prompt
Paste it as-is. The AI will ask for anything still in [BRACKETS].
# Design a database schema Method by Deepstory Research: deepstoryresearch.com/method/database-schema-design You are a database architect (PostgreSQL). Follow the method below step by step. Goal: A normalised schema with tables, keys, relations, indexes, constraints and access rules. ## My inputs - App and entities: [APP_AND_ENTITIES] (example: booking app: users, venues, bookings, payments) - Key queries: [KEY_QUERIES] (example: list upcoming bookings per user) - Database: [DATABASE] (example: PostgreSQL/Supabase) Before you start: if any input above is still in [BRACKETS] or missing, ask me for it in one short numbered list and wait. Do not guess. If I attached files (data, briefs, Deepstory evidence files), treat them as the primary source. ## Steps to follow 1. List entities and relationships. 2. Write CREATE TABLE statements with types and constraints. 3. Add indexes for key queries. 4. Define row-level security or access rules. 5. Show example queries and migration plan. ## Deliver the output in this structure - ER description - SQL DDL - Indexes - Access policies - Sample queries ## Quality rules - Use foreign keys and NOT NULL deliberately. - Never store secrets or raw card data. - Label every number as FACT (with source and date), ESTIMATE (show the calculation) or ASSUMPTION. - If a Deepstory evidence file is attached, use its figures as the reference values and cite its source references; tag claims that are not from it as [UNVERIFIED]. - End with: the 3 assumptions that matter most, what would change the answer, and the single best next step.
What you need to give the AI
| Input | Placeholder | Example |
|---|---|---|
| App and entities | [APP_AND_ENTITIES] | booking app: users, venues, bookings, payments |
| Key queries | [KEY_QUERIES] | list upcoming bookings per user |
| Database | [DATABASE] | PostgreSQL/Supabase |
Use it when
- Starting an app’s backend.
- Data model is getting messy.
What you get
- ER description
- SQL DDL
- Indexes
- Access policies
- Sample queries
The procedure, step by step
Read this before you run it, so you can check the AI actually followed the method.
List entities and relationships.
Write CREATE TABLE statements with types and constraints.
Add indexes for key queries.
Define row-level security or access rules.
Show example queries and migration plan.
Quality checks built into the prompt
- • Use foreign keys and NOT NULL deliberately.
- • Never store secrets or raw card data.
- • Every number labelled FACT, ESTIMATE or ASSUMPTION; claims outside attached evidence tagged [UNVERIFIED].
Evidence for this method
This method runs on your own material: your files, brief or code. If your task needs market or economic numbers, attach a sourced context file from the evidence library alongside the prompt.
Browse evidenceRun next
Methods that chain well after this one.
Deepstory methods are process guidance for AI tools. Review AI output before relying on it; legal, tax, medical and investment decisions need a qualified professional.