SQL and Database Tools
The database tools cover the parts of working with relational databases that happen outside the database itself: sketching a schema, writing a query, working out why one is slow, moving DDL between MySQL, PostgreSQL, SQLite, SQL Server and Oracle, filling a test database and scripting backups. Backend developers, data engineers and DBAs reviewing a migration are the usual users.
9 free tools · no sign-up · no ads
All Database Tools (9)
SQL Query Builder
Build SQL queries with visual interfaceDatabase Schema Designer
Design and visualize database schemasSQL Query Analyzer
Analyze and optimize SQL query performanceSQL Explain Visualizer
Visualize PostgreSQL EXPLAIN plansDatabase ERD Generator
Generate Entity Relationship DiagramsSQL Index Optimizer
Suggest composite indexes from a query's filters, joins and sortDatabase Backup Generator
Generate database backup scripts and strategiesSQL Data Type Converter
Convert data types between different database systemsDatabase Seed Generator
Generate test data and seed scripts for databases
Which tool do I need?
Find out why a PostgreSQL query is slow
Read the EXPLAIN ANALYZE plan in the visualizer to find the costly node, check the query text in the analyzer, and get a candidate index to test.
Draw a diagram of an existing database
Dump the schema with pg_dump --schema-only or mysqldump --no-data and paste it into the ERD Generator, then export the layout as PNG or JPEG.
Move a MySQL schema to PostgreSQL
The SQL Data Type Converter maps column types, auto-increment forms, boolean defaults and identifier quotes, and lists anything that needs a decision.
Fill a development database with realistic test rows
Paste your CREATE TABLE statements into the Database Seed Generator for up to 1,000 rows per table, with foreign keys that point at real parent rows.
Set up a backup script for PostgreSQL or MySQL
The Database Backup Generator writes a timestamped backup script and a matching restore script, and prompts for the password at run time.
Sketch the tables and foreign keys for a new feature
Build tables and relationships in the Schema Designer, generate the SQL, and paste it into the ERD Generator to check the relationships visually.
About Database Tools
The tools follow the life of a schema. Design tables in the Database Schema Designer, which writes MySQL-flavoured DDL, or paste existing DDL into the ERD Generator to see its foreign keys drawn as arrows. Port the DDL with the SQL Data Type Converter, then feed it to the Database Seed Generator for test rows that respect foreign keys and load in dependency order. For queries, the SQL Query Builder writes simple statements with correctly doubled quotes, the SQL Query Analyzer flags patterns such as a leading-wildcard LIKE, the Index Optimizer proposes a composite index with equality columns first, and the SQL Explain Visualizer turns PostgreSQL EXPLAIN (FORMAT JSON) output into a tree that shows the expensive node. The Database Backup Generator writes backup and restore scripts that use each engine's own dump tool.
None of these tools connects to a database. That keeps your schema private, but it also means the analyzer and the index optimizer read query text only: they do not know your table sizes, existing indexes or column selectivity. Treat their output as candidates and confirm with EXPLAIN ANALYZE on a staging copy. The Explain Visualizer is the one tool here that works from what the planner actually chose, and it reads PostgreSQL plans only. The Schema Designer saves to localStorage and the page URL, so download the SQL if the design matters.
Guides
- SQL Indexes and EXPLAIN Plans: Finding Why a Query Is SlowHow B-tree indexes work, why column order matters, how to read a PostgreSQL EXPLAIN ANALYZE plan, and the query patterns that quietly defeat your indexes.
- Database Schema Design and ER Diagrams: Keys, Relationships and Normal FormsPrimary keys, foreign keys, one-to-one versus many-to-many, the normal forms that matter in practice, and how to read an ER diagram generated from SQL.
- SQL Data Types Across MySQL, PostgreSQL, SQL Server, SQLite and OracleA side-by-side map of integer, text, date, boolean and auto-increment types in five databases, and the conversions that break schema migrations.
- Database Backups with pg_dump, mysqldump and Friends: What Actually WorksLogical versus physical backups, the flags that make dumps consistent, keeping passwords out of scripts, and how to prove a backup restores before you need it.
Frequently asked questions
Do these database tools need access to my database?
No. Every tool in this group works on text you paste or fields you fill in, and none of them opens a connection. You bring the DDL, the query or the EXPLAIN output, and you run any generated SQL or script yourself.
How do I work out which index a slow query needs?
Start from the plan, not a guess. Run EXPLAIN ANALYZE, find the node with the most time or a large sequential scan, and note which filter and sort columns it uses. Get a candidate from the Index Optimizer, check it against existing indexes, create it on a staging copy and compare the plans before and after.
Which database engines do the SQL tools support?
It varies by tool. The type converter and backup generator cover MySQL or MariaDB, PostgreSQL, SQLite, SQL Server and Oracle. The Schema Designer writes MySQL types, the Explain Visualizer reads PostgreSQL JSON plans only, and the Query Builder uses LIMIT, which SQL Server and Oracle replace with TOP or FETCH FIRST.
Can a query complexity score tell me if a query is fast?
No. A score from query text counts joins, subqueries and risky patterns, but speed depends on data volume, indexes and the plan the optimizer picks. A complex query can be instant on small tables and a short one can scan millions of rows. Only an execution plan from the real database answers the speed question.
What should I check before running generated SQL against production?
Run it on a copy first. Wrap UPDATE and DELETE statements in a transaction and check the affected row count before committing, review any statement without a WHERE clause, and test a backup script by restoring its output into an empty database.