Data Generation
Generation Workflow
From schema parsing to generated rows and downloadable files.
Data Generation Workflow
This guide covers the complete user-facing flow for generating realistic records.
Input Sources
- Pasted schema text
- Uploaded schema files
- Migration-style SQL structures
Parse Stage
After submission, your schema is parsed into tables, fields, and indexes.
What Gets Detected
- Table names
- Column types, lengths, precision and nullability
- Primary keys, unique constraints and multi-column unique keys
- Foreign keys, including those added later with
ALTER TABLE(as inpg_dumpoutput) - ENUM values and
CHECKconstraints
If the SQL can't be parsed directly, an AI parser takes over. Foreign keys are always checked against your original SQL, so the AI parser can't invent relationships.
Realistic Values
Before rows are generated, each column gets a value profile describing what real data in that column looks like: weighted statuses, code patterns, price distributions, emails built from names, coherent addresses. See Realistic Values.
Relationship-Aware Generation
Faker Forge enforces table relationships, so every foreign key value points at a generated parent row.
Typical Order
- Parent tables generate first.
- Child tables generate after parent IDs exist.
- Self-referencing values are resolved during row generation.
One-to-one keys, unique columns and multi-column unique keys never repeat values. Tables are capped when you ask for more rows than the constraints allow. See Relationships and Integrity.
Running Generation
Set table counts and mappings, then start generation from the configuration step.
During Execution
- Progress updates are emitted in real time.
- Partial output is streamed into generation files.
- Failures return an actionable error state, for example a required foreign key whose parent table isn't selected.
- Row-count caps (one-to-one or composite unique limits) are reported in the progress message.
Completion
When generation completes, output is available for edit and export flows.
Best Practices
- Start with smaller row counts and preview rows to validate mappings and profiles.
- Use the Data Assistant to refine values in plain language.
- Confirm foreign key pairs before large runs.
- Keep high-cardinality text fields constrained where useful.