SQL · DDL · Postgres · MySQL

Test data from your SQL schema — paste DDL, get a full database.

Paste CREATE TABLE statements, a pg_dump schema or connect Postgres/MySQL directly. SeedBase parses columns, primary keys and foreign keys — inline REFERENCES, table-level constraints and ALTER TABLE — and generates data that loads with constraints enabled.

Free tier · no card · EU-hosted · zero trackers

From SQL schema to populated database

Column-level REFERENCES, table-level FOREIGN KEY constraints and ALTER TABLE ... ADD FOREIGN KEY are all recognized. Column generators are inferred from names and types: email becomes an email, city a city, price a plausible amount — and serial/integer primary keys stay sequences.

DDL in — INSERTs out
CREATE TABLE orders (
  id SERIAL PRIMARY KEY,
  user_id INT REFERENCES users(id),
  total DECIMAL(10,2)
);

# → INSERT INTO "users" ... then "orders" —
#   user_id always resolves, topological order

What you get

FK-consistent

Every foreign key resolves

Children reference parents that exist — including self-references (parent_id) and one-to-one relations. Inserts come out in topological order, so the SQL loads into a constrained schema as-is.

realistic

Distributions like real life

Not every user has exactly 5 orders: long-tail and normal distributions create the skew where pagination and N+1 bugs actually show up.

current

Time-aware data

Timestamps generate relative to today — "last 30 days" dashboards stay populated instead of going empty as fixtures age.

reproducible

Deterministic per seed

Same seed, same data — reproducible CI runs. Export the generation config as JSON and commit it next to your migrations.

FAQ

Which SQL dialects are supported?

PostgreSQL, MySQL and SQLite DDL — including backtick/bracket quoting, AUTO_INCREMENT/SERIAL and inline or constraint-style foreign keys. Live connections work for Postgres and MySQL.

Does the generated SQL load with foreign key constraints enabled?

Yes. Tables generate and export in topological FK order, every reference points at an existing row, and self-referencing tables only reference earlier rows.

Can it also use my existing data?

Yes — connect the database directly (Pro) and SeedBase profiles real distributions from sample rows, or paste INSERT statements and it learns from those values. For production data there's GDPR-grade masking.

How many rows can I generate?

The free tier covers small schemas comfortably; smart row counts scale themselves to your plan so the first click always works. Paid plans raise per-generation and monthly limits.

Two minutes to a fully populated database

Sign up, import your schema, generate. No sales call, no credit card — the free tier is enough for a real first impression.

  • FK-consistent
  • Realistic distributions
  • SQL / CSV / JSON
  • EU-hosted
Start free