Docs
Schema, questions, safe SELECT
This is the material that used to fill the homepage: how to extract your database structure, and what the tool will not do with data.
How to start
- Pull table and column names with the query for your engine (below), or follow the paste-schema guide.
- On Paste schema you can generate SQL without an account.
- To keep the same schema, sign in and upload JSON on Load schema.
FAQ
Do you modify data in the database?
No. Only one SELECT is allowed, with a forced LIMIT and filters on statements that change data.
Where do query results go?
To the browser. We do not store them permanently.
Can I run this on my own infrastructure?
Yes, as an on-prem / VPC consultation. Protection details are on the Security page.
How to generate a schema (tables and columns)
Run the matching query in your database and export the result. Replace the database or schema name.
MySQL / MariaDB
SELECT TABLE_NAME, COLUMN_NAME, DATA_TYPE, IS_NULLABLE, COLUMN_KEY FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'your_database' ORDER BY TABLE_NAME, ORDINAL_POSITION;
PostgreSQL
SELECT table_name, column_name, data_type, is_nullable FROM information_schema.columns WHERE table_schema = 'public' ORDER BY table_name, ordinal_position;
SQL Server
SELECT TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME, DATA_TYPE, IS_NULLABLE FROM INFORMATION_SCHEMA.COLUMNS ORDER BY TABLE_SCHEMA, TABLE_NAME, ORDINAL_POSITION;
SQLite
SELECT name AS table_name
FROM sqlite_master
WHERE type = 'table' AND name NOT LIKE 'sqlite_%'
ORDER BY name;
PRAGMA table_info('your_table');
Oracle — your tables
SELECT TABLE_NAME, COLUMN_NAME, DATA_TYPE, DATA_LENGTH, DATA_PRECISION, DATA_SCALE, NULLABLE FROM USER_TAB_COLUMNS ORDER BY TABLE_NAME, COLUMN_ID;
Oracle — a specific OWNER
OWNER is the schema name, usually uppercase, for example HR. Check it with SELECT USER FROM dual;
SELECT OWNER, TABLE_NAME, COLUMN_NAME, DATA_TYPE, NULLABLE FROM ALL_TAB_COLUMNS WHERE OWNER = 'HR' ORDER BY TABLE_NAME, COLUMN_ID;