I'm curious about what tools everyone else uses for designing relational database schemas. Personally, I've been using erdcloud.com and draw.io. What about you all?
7 Answers
I usually build my database schema on the fly. I rely on my ORM to handle migrations as I go. I rarely have a complete picture in my head at the start, but it works for me!
Just make sure you're documenting your plans before coding! It can save you a ton of headaches later by allowing you to spot issues early.
I’ve used both erdcloud and draw.io, but the choice really depends on the project size. For quick prototypes, draw.io is fantastic because of its flexibility. However, for larger team projects, I find tools like dbdiagram.io or DataGrip's diagramming feature crucial. It’s important for me to export migration scripts easily and be able to reverse-engineer existing databases. What type of projects are you working on? That usually influences the tools you should choose.
My go-to tools are dbdiagram.io and sqldbm.com, but honestly, the free versions aren't great. I've tried reaching out to them for support, but they've never responded unfortunately.
Thanks for the tip! I’ll keep that in mind.
When I need to plan ahead, I go old school with just pen and paper. Otherwise, I jump straight to coding the schema and then handle migrations.
I prefer to use a text editor for writing out my DDL. If I ever need a diagram, I turn to SQL::Translator.
I stick with the migration tools from my ORM. I’ve realized that visual tools often slow me down. Using a CLI feels more intuitive for me, plus I sometimes leverage a VSCode extension for queries.
I also use DbSchema for my needs.

I do something similar, but I also check in phpMyAdmin to see if my many-to-many relationships are set up correctly. It's really satisfying when everything clicks into place!