Diagrammi Entità/Relazioni (ER)

19
BASI DI DATI Diagrammi Entità/Relazioni (ER)

description

 

Transcript of Diagrammi Entità/Relazioni (ER)

Page 1: Diagrammi Entità/Relazioni (ER)

BASI DI DATI

Diagrammi Entità/Relazioni (ER)

Page 2: 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.

Page 3: Diagrammi Entità/Relazioni (ER)

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.

Page 4: Diagrammi Entità/Relazioni (ER)

4

Entità

È la classe di oggetti appartenenti alla realtà e che si vogliono rappresentare nel sistema. La sua rappresentazione grafica risulta essere:

ENTITÀ

Page 5: Diagrammi Entità/Relazioni (ER)

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

Page 6: Diagrammi Entità/Relazioni (ER)

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

Page 7: Diagrammi Entità/Relazioni (ER)

7

Attributi sulle relazioni

Rappresentano proprietà legate all’associazione tra entità. Vengono rappresentate nel seguente modo:

ENTITÀ ENTITÀ

RELAZIONE

ATTRIBUTO SULLA RELAZIONE

Page 8: Diagrammi Entità/Relazioni (ER)

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)

Page 9: Diagrammi Entità/Relazioni (ER)

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.

Page 10: Diagrammi Entità/Relazioni (ER)

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

Page 11: Diagrammi Entità/Relazioni (ER)

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

Page 12: Diagrammi Entità/Relazioni (ER)

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.

Page 13: Diagrammi Entità/Relazioni (ER)

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

Page 14: Diagrammi Entità/Relazioni (ER)

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

Page 15: Diagrammi Entità/Relazioni (ER)

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)

Page 16: Diagrammi Entità/Relazioni (ER)

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)

Page 17: Diagrammi Entità/Relazioni (ER)

17

Generalizzazione: esempi

Personale

Non docente Docente

Tecnico Ammin.vo Ordinario RicercatoreAssociato

(t,e)

(t,e) (p,e)

Codice_fiscaleCognomeIndirizzo

Page 18: Diagrammi Entità/Relazioni (ER)

18

Sottoinsieme

Caso particolare di generalizzazione con una sola entità figlia. La generalizzazione è sempre parziale ed esclusiva.

ENTITÀ

ENTITÀ

Page 19: Diagrammi Entità/Relazioni (ER)

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)