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à
- Scegli lo strumento Tabella nella barra degli strumenti e fai clic sulla tela per creare una tabella per ogni entità
- 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
- Seleziona lo strumento Connettore
- Disegna una linea tra le entità correlate
- 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à
| Simbolo | Significato |
|---|---|
| ` | ` (linea singola) |
○ (cerchio) | Zero (opzionale) |
< o > (piede di corvo) | Molti |
Relazioni comuni
| Notazione | Inizio | Fine | Significato |
|---|---|---|---|
| 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
- Seleziona un connettore tra entità
- Nella scheda Stile dell'Ispettore, vai alla sezione Connettore
- Scegli Punta freccia iniziale e Punta freccia finale dall'elenco Punte di freccia integrate. Le punte di freccia ERD sono:
| Punta di freccia | Significato tipico |
|---|---|
| Doppia barra | Esattamente uno (‖) |
| Barra palla | Zero o uno (○|) |
| Piede di corvo | Molti |
| Barra corvo | Uno o molti (|<) |
| Palla corvo | Zero 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
- phone
Order
- order_id (PK)
- customer_id (FK)
- order_date
- total
Passo 3: Disegnare le entità
- Crea una tabella con lo strumento Tabella per ogni entità
- Aggiungi i nomi delle entità come intestazioni
- Elenca gli attributi all'interno di ogni tabella
- Contrassegna le chiavi primarie (PK) e le chiavi esterne (FK)
Passo 4: Aggiungere le relazioni
- Disegna un connettore da Customer a Order
- Imposta l'estremità "uno" su Customer (|)
- Imposta l'estremità "molti" su Order (<)
- 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
erDiagramMermaid 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