Generate Data from CREATE TABLE
Paste a CREATE TABLE and get up to 500,000 rows of realistic test data that fit every column type and rule. Free, and runs in your browser.
How to use the Generate Data from CREATE TABLE
Give a table definition (CREATE TABLE) and generate up to 500,000 rows of realistic test data.
- Paste your table definition
- Set ranges if you want
- Choose rows and generate
Tips
- Table definition: column types and sizes, NOT NULL, PRIMARY KEY, UNIQUE, AUTO_INCREMENT / SERIAL and CHECK (col IN (...)) are all used.
- Edit the Min and Max boxes to set your own ranges for numbers and dates. Rows can be an exact number or a random number in a range.
- Nullable columns get about 10% empty values. Columns named email, city, phone, age or price get realistic values.
- JSON Schema: type, format, enum, const, minimum, maximum, minLength, maxLength, minItems, maxItems, $ref, oneOf and anyOf.
- Property names such as email, first_name, city or phone get realistic values.
- Nested objects become columns like address.city in CSV and Excel. Use Nested JSON to keep the structure.
Example
Input: CREATE TABLE users (id INT, email VARCHAR(100));
Output: 1, ada.chen7@example.com
Frequently asked questions
How does it read my table?
It uses each column type and size, NOT NULL, PRIMARY KEY, UNIQUE and CHECK lists.
Which databases work?
CREATE TABLE from PostgreSQL, MySQL, SQL Server, Oracle and SQLite.
Which databases are supported?
CREATE TABLE from PostgreSQL, MySQL, SQL Server, Oracle and SQLite. Comments, quotes and schema names are handled.
Are foreign keys checked?
No. A foreign key column gets a number from 1 to 100, so load the parent table with ids 1 to 100 first.
Which JSON Schema versions work?
Draft 7 and newer for the common keywords listed above. Unknown keywords are ignored.
Is the data real?
No. It is random and fictional, so it is safe to share.
How many rows can I make?
Up to 500,000 per run. Very large runs use a lot of memory, so close other tabs.
Guides