Cole o SQL, gere o diagrama entidade relacionamento e o dicionário de dados
O ErdDocs gera o DER a partir do schema que você já tem. Cole um dump SQL, um schema Prisma ou as migrations do seu framework. Você recebe um diagrama interativo e um dicionário de dados pronto para imprimir, com todas as tabelas, colunas, tipos e relacionamentos. Não precisa de cadastro nem de instalar nada. O schema é analisado no seu navegador e nunca sai do seu computador.
Nada é enviado. Seu schema fica neste navegador. O último que você colou volta quando você reabre a aba e é apagado se você limpar os dados do site.
Como funciona
Para transformar um dump SQL em diagrama entidade relacionamento e dicionário de dados:
- 01Exporte o schema. No PostgreSQL, use
pg_dump --schema-only. No MySQL, usemysqldump --no-data. - 02Cole acima ou arraste o arquivo .sql direto para o painel.
- 03Leia o diagrama. Passe o mouse sobre uma tabela para destacar os relacionamentos. Um clique fixa o destaque.
- 04Mude para a aba «Dicionário de dados». Lá estão as colunas, os tipos, os valores padrão, os índices e os relacionamentos. Dá para imprimir tudo em PDF.
Feito para dumps de verdade
Um schema de produção não é uma lista arrumada de comandos CREATE TABLE. Por isso o parser é testado com schemas reais: pagila, sakila, GitLab, Discourse, WordPress, PrestaShop. Como cada formato é lido, medido em 89 schemas públicos.
- Tabelas particionadas continuam sendo uma tabela só. Um dump com 55 partições mensais de
paymentdesenha um único cartãopayment, e não 56. - Chaves estrangeiras que faltam são recuperadas. Projetos em Rails e Django muitas vezes não declaram nenhuma no banco. Os nomes das colunas ainda dizem o que aponta para onde, e esses relacionamentos aparecem tracejados.
- Um comando com erro não derruba o arquivo. O que não dá para ler é pulado e informado, e o resto do schema é desenhado normalmente.
- Schemas grandes nunca são cortados. Tudo o que você cola é analisado e organizado, inclusive schemas com centenas de tabelas.
Por que o ErdDocs
- Documentação, não só um desenho. O dicionário de dados é o que professores, auditores, clientes e quem entra no time realmente pedem.
- Sem cadastro e sem instalação. Você não precisa de conta para ver o resultado nem de instalar nada no projeto.
- Pagamento único. Um preço único, em vez de uma assinatura que você esquece de cancelar.
- Seu schema não sai da sua máquina. A análise roda no seu navegador e o schema não é enviado a nenhum servidor. Dá para colar o de produção sem medo de vazar a estrutura do banco de dados.
Converter entre formatos
O ErdDocs lê dez formatos e exporta para oito, tudo no painel acima. Cada uma destas páginas cobre uma conversão, com um exemplo já carregado. Elas estão em inglês:
- Schema Prisma para diagrama ER: o banco que o
schema.prismagera, com tabelas associativas e tudo. - DBML para diagrama ER: a linguagem do dbdiagram, mais um dicionário para imprimir, sem precisar de conta.
- SQL para PlantUML: um dump como
.puml, sem JVM e sem Graphviz. - Gerador de diagrama ER em Mermaid: texto
erDiagrampara um README, a partir de qualquer uma das dez entradas. - DBML para Mermaid: convertido com o diagrama ao lado, para você ver que deu certo.
- Models SQLAlchemy para diagrama ER: models em Python sem pip e sem Graphviz.
- Models Sequelize para diagrama ER: incluindo as chaves que as suas associações implicam.
- Schema Prisma para SQL:
CREATE TABLEsem instalar a CLI. - Models Django para diagrama ER: as tabelas que o Django cria, sem Graphviz.
- TypeORM para diagrama ER: entidades coladas como texto, com a tabela associativa que elas criam.
- Prisma para DBML: para dbdiagram e dbdocs, com o diagrama ao lado do resultado.
- Prisma para PlantUML:
.pumlsem CLI e sem bloco generator. - Gerador de diagrama ER para MySQL: um arquivo do mysqldump, sem instalar o Workbench.
Perguntas frequentes
O que é um dicionário de dados?
É o documento de referência de um banco de dados. Ele reúne em um só lugar todas as tabelas e colunas: o tipo de dado, se aceita nulo, o valor padrão, os índices e os relacionamentos. É usado em trabalhos de faculdade e TCC, em auditorias e na entrega de projetos. O ErdDocs gera o dicionário a partir do schema que você cola, pronto para imprimir.
Meu schema é enviado para algum servidor?
Não. A análise e o desenho acontecem inteiramente no seu navegador. Seu SQL não sai do seu computador e não há conta para criar. De propósito, o ErdDocs não se conecta a um banco ao vivo, então você não precisa passar credenciais de acesso. O site conta as visitas com um beacon de analytics sem cookies, que vê qual página você abriu e nada do que está nela.
Funciona com PostgreSQL, MySQL, SQL Server e SQLite?
Sim. Um pg_dump com ALTER TABLE ONLY ... ADD CONSTRAINT e um mysqldump são lidos como estão. O mesmo vale para scripts gerados no SSMS, com lotes GO e nomes entre colchetes, e para a saída do comando .schema do SQLite. Outras nove entradas são lidas como estão: schemas Prisma, DBML, erDiagram do Mermaid, PlantUML, models do Django, SQLAlchemy e Sequelize, entidades do TypeORM e migrations do Laravel. No Prisma, os nomes @map, os campos de relação e as tabelas associativas implícitas dos muitos para muitos são resolvidos. Assim você chega às tabelas que o banco de fato recebe. O formato é detectado pelo que você cola, e você pode corrigir a escolha.
Meu banco não tem chaves estrangeiras. O diagrama vai sair vazio?
Não. Projetos em Rails, Django ou Laravel costumam manter os relacionamentos só no código. O ErdDocs também lê a convenção de nomes, então uma coluna cliente_id ou user_id se liga à tabela correspondente. Esses relacionamentos aparecem tracejados, para não serem confundidos com os que o banco declara.
Qual a diferença para o dbdiagram, o drawSQL ou o sqltoerdiagram?
No ErdDocs, você paga uma vez só. Os planos pagos do dbdiagram e do drawSQL são só por assinatura. O ErdDocs lê Prisma, models do Django, SQLAlchemy, Sequelize e TypeORM, e também migrations do Laravel. Nenhum dos dois lê nada disso. Os dois também não exportam Mermaid nem PlantUML. Sem conta, o drawSQL não exporta nem uma imagem. Nele, DBML só pode ser importado, nunca exportado. No dbdiagram, quem encontra relacionamentos sem chave estrangeira é um assistente de IA, num plano pago. O ErdDocs encontra esses relacionamentos pelo nome da coluna, de graça. O sqltoerdiagram não tem dicionário de dados para imprimir. Ele desenha cada partição de um dump como uma tabela à parte, enquanto o ErdDocs agrupa as partições sob a tabela mãe. O sqltoerdiagram não lê migrations do Laravel. Para Django e TypeORM, ele pede que você gere o SQL a partir dos models primeiro.
Quanto custa?
Ver diagramas e exportar imagens é grátis, e não precisa de conta. Schemas de até 25 tabelas aparecem completos. Os maiores também são analisados por inteiro, mas as tabelas além do limite aparecem bloqueadas. Um pagamento único de US$ 9 libera essas tabelas e também inclui o dicionário de dados completo. O Paddle adiciona os impostos no pagamento, quando se aplicam.
Mais
- Ferramenta de diagrama ER: gera o DER a partir do SQL em vez de desenhar
- Gerador de dicionário de dados: do schema a um documento para imprimir
- Símbolos do diagrama ER: cardinalidade e notação pé de galinha
- Exemplos de diagrama entidade relacionamento: biblioteca, hospital e escola
- Preços: grátis ou um pagamento único