SQL CREATE TABLE and Dummy Data Generator
Design a SQL Server or Oracle table and generate reviewed CREATE TABLE and synthetic INSERT scripts locally.
Steps 1 and 2
Choose dialect and configure table
Step 3
Configure columns and dummy data
Use 1 to 15 columns. Reorder buttons provide a keyboard-accessible alternative to dragging.
Step 4
Generate SQL scripts
Configure your table, then generate SQL.
How to use this calculator
- Choose a dialect, configure the table and up to 15 columns, select data generators, then generate as many as 1,000 rows.
- Review the live result and use Copy result when you need to share it.
How the calculation works
A normalized schema model is validated before separate SQL Server or Oracle emitters map types, identifiers, literals, identity behavior, Boolean values, and INSERT batches. String literals duplicate apostrophes and never use HTML escaping.
Formula
Validated schema + dialect mapping + synthetic rows → CREATE TABLE and INSERT SQL
Step-by-step calculation
- Choose a dialect, configure the table and up to 15 columns, select data generators, then generate as many as 1,000 rows.
- A normalized schema model is validated before separate SQL Server or Oracle emitters map types, identifiers, literals, identity behavior, Boolean values, and INSERT batches. String literals duplicate apostrophes and never use HTML escaping.
- Check the displayed result, then copy it if needed.
Worked example
The customer preset creates an identity key, Unicode names such as Seán and Siobhán, escaped surnames such as O'Brien, synthetic emails, dates, Booleans, and timestamps.
Risk guidance
What this SQL generator does
The tool turns a configurable table design into a CREATE TABLE statement and optional synthetic INSERT data. Review every script before execution and test it in a non-production environment.
SQL Server versus Oracle
Dialect rules stay separate. SQL Server uses INT IDENTITY, BIT, DATETIME2, bracket quoting, Unicode N strings, and multi-row VALUES. Oracle uses NUMBER identity, NUMBER(1) Booleans, DATE or TIMESTAMP literals, double-quoted identifiers, and individual INSERT or INSERT ALL syntax.
Choosing SQL data types
Select types based on expected values and constraints. Text length, decimal precision and scale, nullability, uniqueness, identity, and primary keys affect both schema output and dummy-data validation.
Apostrophes and Unicode
SQL string escaping duplicates single quotes, so O'Brien becomes O''Brien. SQL Server Unicode columns use N-prefixed strings such as N'Siobhán'; Oracle emits compatible quoted Unicode text. Line breaks, tabs, backslashes, empty strings, and SQL NULL remain plain SQL data.
Realistic synthetic test data
Generators cover numbers, Booleans, names, emails, locations, dates, UUIDs, text, custom lists, and nullable values. Irish and Scottish datasets intentionally include O'Brien, D'Arcy, Seán, Siobhán, Màiri, MacDonald, and McLeod to exercise import and escaping behavior.
Weighted and exact distributions
Weighted mode selects independently for approximate percentages. Exact mode uses deterministic largest-remainder allocation so counts sum to the requested rows, then shuffles the allocated values.
Identity, Boolean, and date behavior
Identity columns are omitted from INSERT data unless explicit identity values are requested. Booleans emit 0 or 1; Oracle can add a NUMBER(1) check constraint. SQL Server uses ISO strings, while Oracle uses explicit DATE and TIMESTAMP literals.
Safety, privacy, and limitations
Your schema and SQL stay in the browser. Generated data is synthetic and must not be treated as real production data. This tool is not a replacement for migrations, database review, regulated test-data systems, or professional schema design.
Frequently asked questions
Can this generate both CREATE TABLE and INSERT scripts?
Yes. Enable either or both, with optional DROP TABLE and comments.
How many rows and columns can I generate?
The limits are 1,000 rows and 15 columns.
Does it support SQL Server and Oracle?
Yes. Each dialect has separate type, identity, Boolean, literal, quoting, and INSERT rules.
How are apostrophes escaped?
Single quotes are doubled: O'Brien becomes O''Brien inside a SQL string.
Can I generate Irish and Scottish names?
Yes. Origin options include Irish, Scottish, and mixed datasets with accented and apostrophe-containing names.
Can I control value percentages?
Custom lists and Booleans support weighted random or exact largest-remainder distributions.
Can I generate null values?
Yes, only for nullable columns, using a configurable percentage or an actual NULL custom value.
Are schemas or scripts uploaded?
No. Schema design, dummy data, and SQL generation remain in your browser.
Can I use this data in production?
Generated data is synthetic. Review scripts and test them outside production before considering any use.
Why does Oracle use 0 and 1 for Booleans?
NUMBER(1) with an optional check constraint is broadly compatible across Oracle table versions.
What is exact distribution?
It allocates whole row counts with largest remainders so the final count exactly matches the requested rows.
Does it replace migration tooling?
No. It is a test-data and script drafting aid, not migration tooling or professional schema review.
Does this tool send my inputs anywhere?
No. The interactive calculation runs in your browser and this site does not submit tool inputs to a backend.
How should I use the result?
Check that the entered units and values match your situation, especially around dates, breaks, and rounding.
Related tools
GUID Generator
Generate secure random UUID v4 identifiers individually or in bulk with custom formatting, case, prefixes and separators.
Open toolRandom Number Generator
Generate one or many random numbers with custom ranges, decimals, unique values, sorting and downloadable results.
Open toolScientific Calculator
Calculate trigonometric, logarithmic, root, and exponent operations locally.
Open tool