Il modello Entità-Relazione (E-R)
📅 6 giugno 2026 — di Alessandro Simone
Prima di creare un database con le tabelle, ogni bravo informatico lo progetta su carta. Lo strumento che si usa per farlo è il modello Entità-Relazione (o modello E-R). È un argomento centrale del programma di informatica, e una volta capiti i suoi tre concetti chiave diventa sorprendentemente intuitivo. Vediamoli insieme.
A cosa serve il modello E-R?
Il modello E-R serve a rappresentare in modo grafico la realtà che vogliamo memorizzare in un database, prima ancora di scrivere una riga di SQL. È una sorta di "progetto dell'architetto": disegniamo lo schema concettuale, e solo dopo lo trasformiamo in tabelle vere. Questo evita errori costosi e rende il database ben organizzato.
Le entità
Un'entità è un oggetto o concetto della realtà di cui vogliamo conservare informazioni. In una scuola, esempi di entità sono Studente, Professore e Corso. Nello schema E-R le entità si disegnano come rettangoli. Pensa alle entità come ai "nomi" del nostro mondo: tipicamente diventeranno le tabelle del database.
Gli attributi
Ogni entità ha degli attributi, cioè le caratteristiche che vogliamo memorizzare. L'entità Studente, ad esempio, può avere gli attributi nome, cognome, data di nascita e matricola. Gli attributi si rappresentano con delle ellissi collegate all'entità.
Tra gli attributi ce n'è uno speciale, la chiave primaria: un attributo (o un insieme di attributi) che identifica in modo univoco ogni occorrenza dell'entità. Per lo studente, la matricola è una chiave perfetta, perché due studenti non possono averla uguale.
Le relazioni
Una relazione (o associazione) collega due o più entità, descrivendo come sono legate tra loro. Ad esempio, uno Studente "frequenta" un Corso, oppure un Professore "insegna" un Corso. Le relazioni si disegnano come rombi tra le entità. Spesso sono espresse da un verbo: frequenta, insegna, possiede.
Le cardinalità
Il concetto che mette più in difficoltà gli studenti è la cardinalità, cioè quante volte un'entità può essere coinvolta in una relazione. Le tre cardinalità fondamentali sono:
- Uno a uno (1:1): a un elemento corrisponde un solo elemento. Es. una persona ha una sola carta d'identità.
- Uno a molti (1:N): a un elemento ne corrispondono molti. Es. un professore insegna a molte classi, ma una classe ha (in quella materia) un solo professore.
- Molti a molti (N:M): molti elementi si associano a molti. Es. uno studente frequenta più corsi e ogni corso ha più studenti.
Capire la cardinalità è fondamentale perché determina come tradurremo lo schema in tabelle.
Un esempio completo
Immaginiamo di modellare una biblioteca scolastica. Avremo:
- entità Libro (attributi: codice ISBN, titolo, autore);
- entità Studente (attributi: matricola, nome, classe);
- relazione "prende in prestito" tra Studente e Libro, con cardinalità molti a molti, perché uno studente può prendere più libri nel tempo e ogni libro può essere prestato a più studenti.
Questo semplice schema descrive perfettamente il funzionamento della biblioteca, ancora prima di pensare alle tabelle SQL.
Dallo schema E-R alle tabelle
Una volta disegnato lo schema, lo si traduce in tabelle seguendo regole precise: ogni entità diventa una tabella, gli attributi diventano colonne e le relazioni vengono gestite con le chiavi esterne (o con una tabella apposita nel caso del molti a molti). Ma questo è il passo successivo: prima viene sempre il progetto concettuale.
In sintesi
Il modello E-R rappresenta la realtà con tre elementi: entità (rettangoli), attributi (ellissi) e relazioni (rombi), specificando le cardinalità. È il progetto su carta che precede la creazione del database. Allenarti a disegnare schemi E-R ti renderà molto più sicuro quando affronterai SQL e le interrogazioni.
