Diagrammi ERD

Crea Diagrammi Entità-Relazione (ERD) per modellare strutture di database e relazioni tra dati.

Cos'è un ERD?

Un Diagramma Entità-Relazione visualizza:

  • Entità: tabelle o oggetti del database
  • Attributi: proprietà delle entità
  • Relazioni: come le entità si collegano tra loro
  • Cardinalità: la natura delle relazioni (uno-a-uno, uno-a-molti, ecc.)

Creare un ERD

Aggiungere entità

  1. Scegli lo strumento Tabella nella barra degli strumenti e fai clic sulla tela per creare una tabella per ogni entità
  2. Usa la prima riga come nome dell'entità e le righe seguenti per gli attributi

Vedi Tabelle per modificare righe, colonne e testo delle celle.

Ogni entità tipicamente contiene:

  • Nome dell'entità (intestazione)
  • Campo/i chiave primaria
  • Altri attributi

Aggiungere relazioni

  1. Seleziona lo strumento Connettore
  2. Disegna una linea tra le entità correlate
  3. Imposta le punte di freccia appropriate per la cardinalità

Notazione a piede di corvo

La notazione a piede di corvo è lo stile ERD più comune. Usa simboli alle estremità dei connettori per mostrare la cardinalità.

Simboli di cardinalità

SimboloSignificato
`` (linea singola)
○ (cerchio)Zero (opzionale)
< o > (piede di corvo)Molti

Relazioni comuni

NotazioneInizioFineSignificato
Uno-a-uno```
Uno-a-molti``<
Molti-a-molti<>Più record si relazionano a più record
Zero-o-uno`○``
Zero-o-molti○<``

Applicare le punte di freccia a piede di corvo

  1. Seleziona un connettore tra entità
  2. Nella scheda Stile dell'Ispettore, vai alla sezione Connettore
  3. Scegli Punta freccia iniziale e Punta freccia finale dall'elenco Punte di freccia integrate. Le punte di freccia ERD sono:
Punta di frecciaSignificato tipico
Doppia barraEsattamente uno (‖)
Barra pallaZero o uno (○|)
Piede di corvoMolti
Barra corvoUno o molti (|<)
Palla corvoZero o molti (○<)

Segmento barra corvo e Palla cerchio corvo sono disegni alternativi per le estremità uno-o-molti e zero-o-molti.

Puoi anche fare clic con il tasto destro sull'estremità di un connettore per scegliere la sua punta di freccia.

Esempio di flusso di lavoro ERD

Passo 1: Identificare le entità

Per un database di e-commerce:

  • Customer
  • Order
  • Product
  • OrderItem

Passo 2: Definire gli attributi

Customer

  • customer_id (PK)
  • name
  • email
  • phone

Order

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

Passo 3: Disegnare le entità

  1. Crea una tabella con lo strumento Tabella per ogni entità
  2. Aggiungi i nomi delle entità come intestazioni
  3. Elenca gli attributi all'interno di ogni tabella
  4. Contrassegna le chiavi primarie (PK) e le chiavi esterne (FK)

Passo 4: Aggiungere le relazioni

  1. Disegna un connettore da Customer a Order
  2. Imposta l'estremità "uno" su Customer (|)
  3. Imposta l'estremità "molti" su Order (<)
  4. Questo mostra: un cliente ha molti ordini

Passo 5: Etichettare le relazioni

Aggiungi etichette di testo ai connettori:

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

Buone pratiche ERD

Layout

  • Mantieni le entità correlate vicine tra loro
  • Usa dimensioni coerenti per le entità
  • Allinea le entità in uno schema a griglia
  • Riduci al minimo i connettori che si incrociano

Denominazione

  • Usa sostantivi singolari per le entità (Customer, non Customers)
  • Usa convenzioni di denominazione coerenti (camelCase, snake_case)
  • Etichetta le relazioni con dei verbi

Documentazione

  • Includi le chiavi primarie per tutte le entità
  • Mostra chiaramente le chiavi esterne
  • Considera di aggiungere i tipi di dato
  • Annota eventuali vincoli

Suggerimenti

  • Inizia dal testo: incolla un erDiagram Mermaid con Composizione → Inserisci Mermaid (PRO) per ottenere una prima bozza, poi perfezionala — vedi Supporto Mermaid
  • Usa il layout automatico: aiuta a organizzare diagrammi complessi
  • Raggruppa le entità correlate: crea sezioni logiche
  • Esporta per la documentazione: includi in specifiche tecniche e wiki
  • Controllo di versione: salva le iterazioni man mano che il tuo database evolve