Premessa
Portale di appartenenza: Basi di dati.
Cosa troverai in questa nota:
Prerequisiti: per comprendere pienamente il contenuto di questa nota, oltre le conoscenze minime che do per scontato che tu sappia giร , ti consiglio di aver letto in precedenza queste altre note:
Buona lettura! โ๏ธ๐ค
Definizione: modello E-R e schema E-R
Il modello E-R (Entitร -Relazione) รจ un modello concettuale che fornisce costrutti per descrivere le specifiche sulla struttura dei dati in modo semplice e comprensibile, usando un formalismo grafico indipendente dal modello logico che sarร scelto in seguito: lo schema E-R.
Il modello E-R rappresenta i dati attraverso entitร (oggetti o concetti del mondo reale), attributi (proprietร o caratteristiche delle entitร ) e relazioni (associazioni tra entitร ).
1 - Entitร
Definizione: entitร
Unโentitร รจ una rappresentazione di una classe di oggetti (ognuno dei quali detto istanza) del mondo reale che hanno proprietร comuni ed esistenza autonoma ai fini dellโapplicazione di interesse.
Graficamente si rappresenta con un rettangolo in cui allโinterno si scrive il nome dellโentitร (per esempio, in questo caso, lโentitร puรฒ avere come istanze , , , ecc.):
![]()
2 - Relazioni
Definizione: relazione
Esempio: relazione ternaria
Osservazione: piรน relazioni sulle stesse entitร
Notazione: termine associazione al posto di relazione
A volte, si sceglie di utilizzare il termine associazione al posto di relazione per evitare di generare confusione con la relazione del modello relazionale.
Occorrenze di relazioni
Definizione: occorrenza
Esempio: occorrenze nella relazione
Riprendendo lโesempio della relazione contenuto nella definizione stessa di relazione, un esempio di una sua occorrenza รจ , dove รจ unโistanza dellโentitร , mentre รจ unโistanza dellโentitร .
Non puรฒ esistere per questa relazione unโaltra occorrenza perchรฉ, per definizione, le occorrenze devono essere uniche.
Esempio: occorrenze nella relazione
Nel caso dellโesempio di relazione ternaria, una possibile occorrenza di potrebbe essere , dove รจ unโistanza dellโentitร , รจ unโistanza dellโentitร e รจ unโistanza dellโentitร .
Relazioni ricorsive
Definizione: relazione ricorsiva
Esempio: relazione ricorsiva binaria
Riprendendo lโesempio della relazione ricorsiva contenuto nella definizione stessa di relazione ricorsiva, un esempio di una sua occorrenza รจ , dove entrambi i valori sono istanze dellโentitร .
Esempio: relazione ricorsiva ternaria
Anche le relazioni ternarie possono essere ricorsive, per esempio collegando tre volte la stessa entitร (come in questo caso lโentitร con la relazione ):
Una possibile occorrenza di รจ , dove tutti e tre questi valori sono istanze dellโentitร : questa relazione rappresenta quindi 3 studenti legati logicamente dal fatto che fanno tutti parte della stessa classe.
In alternativa, una relazione ternaria puรฒ essere ricorsiva anche se ci sono 2 entitร di cui una presente due volte nella relazione (in questo caso, nella relazione รจ presente 2 volte lโentitร e 1 volta ):
Una possibile occorrenza di รจ , dove i primi 2 valori sono istanze dellโentitร e il terzo di .
4 - Cardinalitร di relazioni
Definizione: cardinalitร di una relazione
In una relazione, la cardinalitร รจ una coppia ordinata di valori associati a ogni entitร che partecipa alla relazione, in cui:
- rappresenta il numero minimo di occorrenze della relazione cui ciascuna istanza di una entitร puรฒ partecipare.
- rappresenta il numero massimo di occorrenze della relazione cui ciascuna istanza di una entitร puรฒ partecipare.
Graficamente, si rappresenta scrivendo la coppia di valori sulla linea che collega lโentitร alla relazione a cui si riferisce (in questo caso la coppia indica che ogni istanza dellโentitร puรฒ comparire dalle 2 alle 5 volte nella relazione , mentre la coppia indica che ogni istanza dellโentitร puรฒ comparire dalle 0 alle 50 volte nella relazione ):
![]()
Notazione convenzionale per la cardinalitร
Convenzionalmente, si usano solo valori per indicare la cardinalitร di una relazione: , ed .
In particolare, per la cardinalitร minima (cioรจ il valore della in una generica cardinalitร ):
- : indica la partecipazione opzionale alla relazione, ossia possono esserci istanze dellโentitร che non partecipano alla relazione.
- : indica la partecipazione obbligatoria alla relazione, ossia tutte le istanze dellโentitร partecipano minimo una volta alla relazione.
Mentre, per la cardinalitร massima (cioรจ il valore della in una generica cardinalitร ):
Classificazione delle relazioni
Definizione: classificazione delle relazioni
In base alle loro cardinalitร massime, le relazioni sono classificabili in 3 categorie:
3 - Attributi
Definizione: attributo
Un attributo รจ una proprietร elementare di unโentitร o di una relazione ed รจ caratterizzato da un dominio, ossia un insieme di valori ammissibili.
Graficamente si rappresenta con un pallino vuoto intorno al quale si scrive il nome dellโattributo e collegato allโentitร o relazione a cui si riferisce (come in questo caso gli attributi , e che si riferiscono allโentitร ):
![]()
Definizione: attributo composto
Un attributo composto รจ un insieme di attributi di una stessa entitร o relazione, ognuno dei quali รจ una parte del concetto che si vuole rappresentare.
Graficamente si rappresenta con un ellisse dentro al quale si scrive il nome dellโattributo composto, collegata allโentitร come se fosse un attributo normale e a cui sono collegati a sua volta gli attributi da cui รจ composto (in questo caso, per lโentitร , oltre agli attributi normali e possiede anche lโattributo composto che si scompone negli attributi , e ):
![]()
Cardinalitร di attributi
Definizione: cardinalitร di un attributo
In un attributo, la cardinalitร รจ una coppia ordinata di valori in cui:
- puรฒ assumere valori (opzionalitร dellโattributo) o (obbligatorietร dellโattributo).
- puรฒ assumere valori (attributo monovalore) o (attributo multivalore).
Graficamente, si rappresenta scrivendo la coppia di valori sulla linea che collega lโattributo allโentitร (in questo caso la coppia indica che lโattributo รจ opzionale ma, se presente, puรฒ assumere piรน di un valore, perchรฉ magari possono essere salvati molteplici numeri di telefono):
![]()
Identificatori di entitร
Definizione: identificatore di un'entitร
Un identificatore di unโentitร รจ un insieme di valori che permettono di identificare univocamente lโentitร stessa. Possono essere interni o esterni a seconda di che cosa costituisce lโidentificatore. Ogni entitร ne possiede almeno uno.
Graficamente si rappresenta con un pallino pieno collegato a una linea che attraversa tutto ciรฒ di cui รจ composto lโidentificatore. Nel caso in cui รจ composto solo da un attributo, per rappresentarlo si riempie il pallino di quellโattributo.
Definizione: identificatore interno
Un identificatore si dice interno se รจ costituito unicamente da attributi dellโentitร a cui si riferisce.
Esempi di identificatori interni
Ecco un esempio di identificatore interno composto da diversi attributi dellโentitร a cui si riferisce (, e ):
Ecco invece un esempio di identificatore interno composto da un unico attributo ():
Definizione: identificatore esterno
Un identificatore si dice esterno se รจ costituito da attributi dellโentitร a cui si riferisce e da una o piรน relazioni a cui รจ legata lโentitร .
Esempio di identificatore esterno
Ecco un esempio di identificatore esterno composto da due attributi dellโentitร a cui si riferisce ( e ) e la relazione :
Osservazione: cardinalitร degli identificatori
Gli identificatori possono essere formati unicamente da attributi che hanno cardinalitร e relazioni con cardinalitร .
Generalizzazioni di entitร
Definizione: generalizzazione di un'entitร
Una generalizzazione รจ un collegamento logico tra unโentitร , detta genitore, e altre entitร , in cui queste ultime, dette figlie o specializzazioni, ereditano automaticamente tutte le proprietร di come attributi, relazioni o altre generalizzazioni. Puรฒ essere totale o parziale, esclusiva o sovrapposta.
Graficamente si rappresenta con una freccia spessa che parte dalle specializzazioni e entra nellโentitร , sotto cui viene indicata una coppia ordinata di valori dove:
- assume il valore se รจ totale, se รจ parziale.
- assume il valore se รจ esclusiva, se รจ sovrapposta.
![]()
Generalizzazioni totali e parziali
Definizione: generalizzazione totale e parziale
Una generalizzazione si dice totale se ogni occorrenza dellโentitร genitore รจ occorrenza di almeno una delle entitร figlie, parziale altrimenti.
Generalizzazioni esclusive e sovrapposte
Definizione: generalizzazione esclusiva e sovrapposta
Una generalizzazione si dice esclusiva se ogni occorrenza dellโentitร genitore รจ occorrenza di al piรน una delle entitร figlie, sovrapposta altrimenti.
Sottoinsiemi
Definizione: sottoinsieme
Una generalizzazione in cui unโentitร ha solo unโentitร figlia รจ detta sottoinsieme.
Documentazione associata agli schemi E-R
Spesso gli schemi E-R non sono sufficienti a rappresentare tutti gli aspetti richiesti per la base di dati: per esempio, non si possono specificare determinati vincoli che devono rispettare i valori degli attributi (es. un attributo che deve necessariamente avere valori numerici positivi).
Per ovviare a questi problemi, gli schemi E-R solitamente sono accompagnati da documentazione aggiuntiva che rappresenta โregoleโ che il dominio applicativo deve rispettare, come il dizionario dei dati, la lista delle asserzioni e la lista delle derivazioni.
Dizionario dei dati
Definizione: dizionario dei dati
Il dizionario dei dati รจ uno schema che specifica la funzione e il concetto dietro ogni entitร o relazione. In particolare, si tratta di tabelle che:
- Nel caso delle entitร hanno i seguenti campi:
- Entitร : nome dellโentitร .
- Descrizione: breve descrizione del concetto che lโentitร vuole rappresentare.
- Attributi: lista degli attributi dellโentitร .
- Identificatore: lista degli attributi o relazioni che compongono lโidentificatore dellโentitร .
- Nel caso delle relazioni hanno i seguenti campi:
- Relazione: nome della relazione.
- Descrizione: breve descrizione del concetto che la relazione vuole rappresentare.
- Componenti: lista delle entitร che afferiscono alla relazione con la loro relativa cardinalitร .
- Attributi: lista degli attributi della relazione (se ce ne sono).
Lista delle asserzioni
Definizione: lista delle asserzioni
Lista delle derivazioni
Definizione: lista delle derivazioni
La lista delle derivazioni รจ una lista di regole che specificano le operazioni necessarie per ottenere un concetto attraverso lโinferenza o calcoli da altri concetti dello schema E-R.
Ogni derivazione viene tipicamente espressa nella forma:
Approfondimento
Se vuoi saperne di piรน:
Fonti:
- ๐ซ Lezioni e slide del Prof. Pensa Ruggero Gaetano del corso di Laboratorio di Basi di Dati (canale B, turno T1), Corso di Laurea in Informatica presso lโUniversitร di Torino, A.A. 2024-25:





