Why do you need a database model? And what tools are available to help you in the database design process? We review the best online database schema design tools in this article.
One of the key tasks in the software development cycle is data modeling. Creating a good data model allows us to save costs and speed up development, as explained in the article Why Do You Need Data Modeling?.
There are three types of data models, each one more detailed than the last. A conceptual data model allows us to identify the main entities for our solution. A logical data model allows us to define our functional requirements in detail, without considering the technical aspects of a particular database engine. Once the logical model is complete, we can transform it into a physical data model. The physical model is specifically adapted to your chosen database engine. To learn more about data models, check out What Are Conceptual, Logical, and Physical Data Models?.
There are several database modeling tools available as online services or as installable software. I prefer online data modeling tools for many reasons – take a look at my article 8 Advantages of an Online ER Diagram Tool to learn why – so let’s review my picks for the best online database modeling solutions.
Our Picks for Online Database Schema Design Tools
Vertabelo is a web-based database schema design tool that is very simple to use and has very powerful features. It allows you to create conceptual and logical models and transform them into physical models. It supports most database engines, including Oracle, SQL Server, MySQL, PostgreSQL and DB2, and online database services like Snowflake and Redshift. It even generates the SQL scripts to implement the databases you design.
In its clean and modern UI, Vertabelo includes an auto-save feature that prevents losing any work and a versioning feature that allows us to go back in time and review previous versions of the model. All models and SQL scripts are stored online; models can be exported as XML documents and SQL scripts can be downloaded locally. An option to generate model documentation in PDF, HTML, or Word documents is also available.
Vertabelo is a subscription-based service with a free Academic account and paid Individual (limited to 20 database models up to 100 tables), Team, and Enterprise (unlimited) editions.
Data models are automatically validated and any errors can be easily identified. Vertabelo also provides warnings and hints to improve the model.
Vertabelo allows sharing models with other users as a Viewer, Editor, or Owner. See the article How to Collaborate Effectively in Vertabelo for more details on our collaboration features, which include sharing a link to the data model.
You can automatically create SQL scripts to generate or drop all or some of the objects in a database model with just a few clicks. Vertabelo automatically validates the model and shows warnings and errors.
Vertabelo can also generate a migration script between two models or two versions of a model, making it really simple to implement changes.
If you already have a database but do not have a data model, you can use the Import Database feature to connect to it and generate a model in Vertabelo. More details are available in the Vertabelo Features page.
Diagrams.Net (formerly Draw.io)
This great tool allows you to design many types of diagrams, including entity-relationship diagrams (ERDs). You can create both conceptual and logical data models, choosing from several notations to represent relationships between entities. Although you can create conceptual and logical models, you cannot convert them to physical data models with this tool; it does not support any specific database engine.
The tool has an Auto-Save feature that is enabled by default, and versioning is available when saving the diagrams to the Cloud or to a source control repository.
Diagrams.Net is free to use and no registration is required!
Note: There is also a desktop version of the tool available for Windows, MacOS, and Linux that has the same features as the online tool.
You can save and access diagrams stored in several Cloud storage providers (like Google Drive, OneDrive, and Dropbox) or in source control repositories like GitHub and GitLab. You can also share the file with other users via Google Drive or OneDrive or publish it using a link generated by the tool.
Besides being able to define entity-relationship diagrams, you can generate UML, flowchart, and other types of diagrams.
This tool allows users to create conceptual, logical and physical data models, supporting both on-premises databases (Oracle, SQL Server, PostgreSQL, and MySQL) and Cloud database services (like Snowflake, Redshift, and Azure Synapse). It can be integrated with Azure DevOps, GitHub, GitLab, Bitbucket, and AWS CodeCommit for advanced version control and with Confluence and Jira for documenting and issue tracking.
The user interface is simple and powerful. It includes dark and light themes, an auto-layout feature that arranges objects automatically, and object color coding.
SqlDBM offers a Basic subscription model with limited features (no logical diagrams or team collaboration; only SQL Server, MySQL, and PostgreSQL support) as well as more advanced Business and Enterprise editions.
You can import a SQL script from any of the supported database engines to automatically create a database model. Once the model is created, you can continue evolving it and then create the final version of the script to implement your model.
This feature allows you to easily identify differences between different model versions. The Alter Script feature creates a script to synchronize your database with the differences between two saved versions of the model.
Diagrams can be easily exported as PNG images, and there is an option to generate an Excel report containing all the model information (tables, keys, indexes, etc.).
This is a well-known tool for creating different kinds of diagrams, including ERDs, flowcharts, organization charts, process maps, and network diagrams. As a generic diagram tool and not a database design tool, it only supports conceptual and logical diagrams. However, you can generate a basic SQL script for each of the entities. You can choose from a list of several database engines, including Oracle, SQL Server, MySQL, and PostgreSQL.
The user interface is very simple and intuitive, although the level of detail is limited.
You can get a free subscription to this tool, which is limited to three diagrams with up to 60 elements each. The Individual, Team, and Enterprise subscriptions offer advanced features like premium shape libraries, commenting, revision history and multiple integrations.
Extra Tip: There is a beta feature to import Draw.io diagrams into LucidChart.
LucidChart can integrate with many services from multiple providers, including:
- Google Drive, Docs, Sheets, and Workspace.
- Jira (issue tracker) and Confluence (wiki) from Atlassian.
- Azure, AWS, or Google Cloud architecture.
- Visio import and export.
You can see all possible integrations on the LucidChart Integration Marketplace.
Note: Most integrations are available only for paid subscriptions.
Real-time co-authoring is supported, with an in-editor chat feature to help team members communicate while working on the same diagram. There are additional shapes to include comments.
Diagrams can be exported to PDF/JPG/PNG or published so they can be accessed through a link.
DB Designer is a powerful online database modeler that supports the creation of physical data models for MySQL, SQL Server, PostgreSQL, Oracle, and SQLite on-premises databases and the Snowflake Cloud database service.
Although the UI is not as simple or as neat as other tools we have reviewed, it offers a good set of features like version history and column coloring.
You can choose between a free Starter subscription plan (limited to 2 database models with up to 10 tables) and Basic (5 models with 25 tables) or Unlimited plans. All plans have the same features.
You can easily share a link to each model. Any person with the link can access the model in read-only mode and up to five registered users can edit the model. A diagram can be exported as an image or a PDF with just one click.
Extra tip: Notes can be added (with different colors) to add comments to different sections of the diagram.
The designer includes an option to share the model with SQLSpy, a site that analyzes and documents data models using SQL scripts.
SqlDBD is a modern tool with a simple and friendly UI. It allows you to design physical data models for MySQL, PostgreSQL, and SQL Server database engines. It offers both light and dark themes and is easily configurable to show datatypes, indexes, keys and foreign key names. It supports the IDEF1X and Crow’s Foot notations as well as table coloring, which allows you to group entities in a diagram.
SqlDBD is offered in a subscription model with Starter (10 projects, 50 tables per project), Business, and Enterprise plans.
Other SqlDBD users can access your diagrams, either in read-only mode or as collaborators. Diagrams can be edited by multiple users at the same time
Diagrams can also be exported as PDF or PNG files.
Reverse Engineering & Upgrade Script
You can use a SQL script as a source to create a model (including all the objects in it). Or you can generate a script with differences between two model versions. Note: These options are only available with Business and Enterprise subscriptions.