diagrammi entità/relazioni (er)
DESCRIPTION
TRANSCRIPT
BASI DI DATI
Diagrammi Entità/Relazioni (ER)
2
Premessa
La gestione dati in una applicazione viene affrontata a vari livelli:
• modello concettuale (nella specifica);• modello logico (nel progetto);• modello fisico (nell’implementazione).
In genere le applicazioni si appoggiano a strutture di gestione dei dati preconfezionate.
3
Diagramma Entità/Relazioni (ER)
Il diagramma ER rappresenta una descrizione concettuale dei dati che costituiscono un sistema informativo e delle relazioni logiche esistenti tra tali dati. Esso è costituito da:
• entità;• attributi;• relazioni tra entità;• attributi sulle relazioni;• cardinalità dell’entità sulla relazione.
4
Entità
È la classe di oggetti appartenenti alla realtà e che si vogliono rappresentare nel sistema. La sua rappresentazione grafica risulta essere:
ENTITÀ
5
Attributi
Ad ogni entità è associato un insieme di attributi che caratterizzano i singoli elementi dell’entità. Tra gli attributi gioca un ruolo importante un particolare attributo, chiamato chiave, che permette di identificare univocamente ogni elemento dell’insieme di dati considerato. Vengono rappresentati nel seguente modo:
ENTITÀ
ATTRIBUTO CHIAVE
ATTRIBUTO
ATTRIBUTO LISTA
ATTRIBUTO COMPOSTO
6
Relazioni tra entità
Rappresentano l’associazione tra due o più entità. Le relazioni binarie che legano un’entità a se stessa sono dette relazioni ad anello o ricorsive; per distinguere il ruolo che l’entità gioca nella relazione, questi sono specificati tramite etichette poste sui due rami della relazione. La rappresentazione grafica risulta essere:
ENTITÀ ENTITÀ
RELAZIONE
7
Attributi sulle relazioni
Rappresentano proprietà legate all’associazione tra entità. Vengono rappresentate nel seguente modo:
ENTITÀ ENTITÀ
RELAZIONE
ATTRIBUTO SULLA RELAZIONE
8
Cardinalità dell’entità sulla relazione
Sulla relazione, e vicino ad un’entità A, definisce il numero minimo (m) ed il numero massimo (M) di entità B che possono essere collegate. La rappresentazione grafica è presto fatta:
ENTITÀ ENTITÀ
RELAZIONE
B(m,M) A(m,M)
9
Funzionalità di una relazione
Il modello ER fornisce una descrizione più aderente alla realtà se si pongono dei vincoli sul numero di volte in cui un elemento di entità può partecipare ad una relazione, o in altre parole sul numero di tuple distinte alle quali esso può appartenere. Si parla perciò di funzionalità di una relazione.
10
Generalizzazione
Descrive un collegamento logico tra un’entità E (entità padre) e una o più entità E1, E2, ..., En (entità figlie).
E
E1 En
11
Generalizzazione: proprietà
• Ogni occorrenza di un’entità figlia è anche un’occorrenza dell’entità padre
• Ogni proprietà dell’entità padre (attributi, identificatori, relationship, altre generalizzazioni) è anche una proprietà di ogni entità figlia (ereditarietà)
• Un’entità può essere coinvolta in più generalizzazioni diverse
12
Generalizzazione: proprietà
Caratteristiche ortogonali:• generalizzazione totale se ogni occorrenza
dell’entità padre è un’occorrenza di almeno una delle entità figlie, parziale altrimenti;
• esclusiva se ogni ocorrenza dell’entità padre è al più un’occorrenza di una delle entità figlie, sovrapposta altrimenti.
13
Generalizzazione: esempi
Persona
Uomo Donna
Persona
Studente Lavoratore
Totale ed esclusiva Parziale e sovrapposta
Uomo Donna Né studente né lavoratore
Sia studente sia lavoratore
Studente
Lavoratore
14
Generalizzazione: esempi
Personale
Dipendente Esterno
Cittadino
Cacciatore Pescatore
Totale ed esclusiva Parziale e sovrapposta
Dipendente Esterno Né cacciatore né pescatore
Sia cacciatore sia
pescatore
Pescatore
Cacciatore
15
Generalizzazione: esempi
Parziale: possono esistere esterni generici che non sono né legali, né ingegneri, né economisti ma non interessa una sottoclasse ad hoc.
Esterno
Legale EconomistaIngegnere
(p,e)
16
Generalizzazione: esempi
Sovrapposta: possono esistere ingegneri con competenze di meccanica, elettronica e logistica. Le tre qualifiche non si escludono.
Ingegnere
Logistico ElettronicoMeccanico
(p,s)
17
Generalizzazione: esempi
Personale
Non docente Docente
Tecnico Ammin.vo Ordinario RicercatoreAssociato
(t,e)
(t,e) (p,e)
Codice_fiscaleCognomeIndirizzo
18
Sottoinsieme
Caso particolare di generalizzazione con una sola entità figlia. La generalizzazione è sempre parziale ed esclusiva.
ENTITÀ
ENTITÀ
19
Esempio finale ER
SQUADRA GIOCATORE
SERIE
APPARTENENZA
HA MILITATO IN
NOME
CO
DIC
E
NO
ME
RU
OL
O ID
EA
LE
STAGIONE
PUNTEGGIO
CITTA’
NOME
CODICE
RUOLO
ANNI
CORRENTE
(11,N)
(1,1)
(1,N)
(1,N)