Diagramas ERD

Crie Diagramas de Entidade-Relacionamento (ERDs) para modelar estruturas de banco de dados e relacionamentos de dados.

O que é um ERD?

Um Diagrama de Entidade-Relacionamento visualiza:

  • Entidades: Tabelas ou objetos do banco de dados
  • Atributos: Propriedades das entidades
  • Relacionamentos: Como as entidades se conectam entre si
  • Cardinalidade: A natureza dos relacionamentos (um-para-um, um-para-muitos, etc.)

Criando um ERD

Adicionando Entidades

  1. Escolha a ferramenta Table na barra de ferramentas e clique na tela para criar uma tabela para cada entidade
  2. Use a primeira linha como o nome da entidade e as linhas seguintes para os atributos

Veja Tabelas para editar linhas, colunas e o texto das células.

Cada entidade normalmente contém:

  • Nome da entidade (cabeçalho)
  • Campo(s) de chave primária
  • Outros atributos

Adicionando Relacionamentos

  1. Selecione a Connector Tool
  2. Desenhe uma linha entre entidades relacionadas
  3. Defina as pontas de seta apropriadas para a cardinalidade

Notação de Pé de Galinha

A notação de pé de galinha (crow's foot) é o estilo de ERD mais comum. Ela usa símbolos nas extremidades dos conectores para mostrar a cardinalidade.

Símbolos de Cardinalidade

SímboloSignificado
`` (linha simples)
○ (círculo)Zero (opcional)
< ou > (pé de galinha)Muitos

Relacionamentos Comuns

NotaçãoInícioFimSignificado
Um-para-Um```
Um-para-Muitos``<
Muitos-para-Muitos<>Vários se relacionam com vários
Zero-ou-Um`○``
Zero-ou-Muitos○<``

Aplicando Pontas de Seta de Pé de Galinha

  1. Selecione um conector entre entidades
  2. Na aba Style do Inspetor, vá até a seção Connector
  3. Escolha Start Arrowhead e End Arrowhead na lista Built-in Arrowheads. As pontas de seta de ERD são:
Ponta de setaSignificado típico
Bar BarExatamente um (‖)
Bar BallZero ou um (○|)
Crows FeetMuitos
Crow BarUm ou muitos (|<)
Crow BallZero ou muitos (○<)

Crow Bar Segment e Crow Ball Circle são desenhos alternativos para as extremidades "um-ou-muitos" e "zero-ou-muitos".

Você também pode clicar com o botão direito na extremidade de um conector para escolher sua ponta de seta.

Fluxo de Trabalho de Exemplo de ERD

Etapa 1: Identificar Entidades

Para um banco de dados de e-commerce:

  • Customer
  • Order
  • Product
  • OrderItem

Etapa 2: Definir Atributos

Customer

  • customer_id (PK)
  • name
  • email
  • phone

Order

  • order_id (PK)
  • customer_id (FK)
  • order_date
  • total

Etapa 3: Desenhar Entidades

  1. Crie uma tabela com a ferramenta Table para cada entidade
  2. Adicione os nomes das entidades como cabeçalhos
  3. Liste os atributos dentro de cada tabela
  4. Marque as chaves primárias (PK) e chaves estrangeiras (FK)

Etapa 4: Adicionar Relacionamentos

  1. Desenhe um conector de Customer para Order
  2. Defina a extremidade "um" em Customer (|)
  3. Defina a extremidade "muitos" em Order (<)
  4. Isso mostra: um cliente tem muitos pedidos

Etapa 5: Rotular Relacionamentos

Adicione rótulos de texto aos conectores:

  • "places" (Customer → Order)
  • "contains" (Order → OrderItem)
  • "is product in" (Product → OrderItem)

Boas Práticas para ERDs

Layout

  • Mantenha entidades relacionadas próximas umas das outras
  • Use um tamanho consistente para as entidades
  • Alinhe as entidades em um padrão de grade
  • Minimize o cruzamento de conectores

Nomenclatura

  • Use substantivos no singular para entidades (Customer, não Customers)
  • Use convenções de nomenclatura consistentes (camelCase, snake_case)
  • Rotule os relacionamentos com verbos

Documentação

  • Inclua chaves primárias para todas as entidades
  • Mostre as chaves estrangeiras claramente
  • Considere adicionar tipos de dados
  • Anote quaisquer restrições

Dicas

  • Comece pelo texto: Cole um erDiagram do Mermaid com Edit → Insert Mermaid (PRO) para obter um primeiro rascunho, depois refine-o — veja Suporte a Mermaid
  • Use o layout automático: Ajuda a organizar diagramas complexos
  • Agrupe entidades relacionadas: Cria seções lógicas
  • Exporte para documentação: Inclua em especificações técnicas e wikis
  • Controle de versão: Salve as iterações à medida que seu banco de dados evolui