Tables and columns
Add tables, give columns a type and mark primary key, not null, unique and auto increment in one click.
Add tables and columns, connect them by dragging. When you are done, get the CREATE TABLE statements for your database in one click. No account needed to start.
Build your schema visually without writing SQL; let the tool write the code when you are ready.
Add tables, give columns a type and mark primary key, not null, unique and auto increment in one click.
Drag a column onto another table's column to create a foreign key with ON DELETE and ON UPDATE rules.
Generate correct SQL for MySQL, MariaDB, PostgreSQL, SQLite, SQL Server and Oracle from the same design.
Export your schema as a Laravel migration or as DBML.
Download your diagram as an image for docs and presentations.
Tables without a primary key, duplicate columns and empty names are listed instantly.
Every change can be undone; your design saves as you work.
Arrange tables into tidy columns by their relationships in one click.
Double-click the canvas or press "Add table"; edit columns in the right panel.
Drag the foreign key column onto the primary key of the table it references.
Pick a database in the export window, copy the code or download a .sql file.
Draw the ER diagrams from database courses and see the matching SQL.
Plan a new project's schema before coding and get the migration ready.
Share the schema visually; PNG or SVG drops straight into docs.
Explain normalization and relationship types with a live diagram.
A good schema keeps one entity per table (user, order, product) and moves repeated data into separate tables. Every table needs a primary key that uniquely identifies its rows.
Tables are linked with foreign keys. In a one-to-many relationship the foreign key lives on the "many" side; a many-to-many relationship uses a junction table that points to both tables.
Databases write the same thing differently: an auto-increment id is AUTO_INCREMENT in MySQL, GENERATED AS IDENTITY in PostgreSQL and IDENTITY(1,1) in SQL Server. DB Designer handles these differences for you.
Yes. Creating designs and exporting them as SQL, PNG or SVG is free.
No. You can design and export without signing up; your draft is kept in your browser session. Sign in with a free account to keep your designs.
No. Your guest draft is saved to your account automatically when you sign in.
It generates SQL for MySQL, MariaDB, PostgreSQL, SQLite, SQL Server and Oracle, plus Laravel migrations and DBML.
Add your tables, connect them and get the SQL in minutes.
Design a database