Modellizzazione di un database
Un esempio di modellizzazione
●
●
●
Modellizzare abbiamo detto quindi vuol dire
riportare un caso reale in un contesto simulato,
che sarà appunto prima la carta e poi il
database in formato elettronico gestito da un
dbms.
In poche parole un informatico deve essere
capace di interpretare il problema che ha di
fronte e di tradurlo in un software che sia
funzionante e che allo stesso tempo soddisfi
tutte le richieste.
Per iniziare riportiamo quindi la modellizzazione
di un caso abbastanza semplice.
Un esempio di modellizzazione
●
●
Vogliamo costruire il database per la nostra
agenda telefonica.
Primo passo: Individuazione delle entità:
–
–
●
Numero
Persona
Secondo passo: determinazione delle
associazioni tra le entità:
–
Una persona può avere più numeri telefonici, un numero
telefonico corrisponde a una sola persona: 1:N (uno a
molti)
Un esempio di modellizzazione
●
Terzo passo: determinazione degli attributi:
–
Per numero abbiamo:
●
●
●
●
–
id_numero (chiave primaria)
numero_telefonico
Operatore
id_persona (chiave esterna)
Per persona:
●
●
●
●
●
id_persona (chiave primaria)
nome_persona
cognome_persona
residenza
impiego
Un esempio di modellizzazione
●
Quarto passo: rappresentazione:
numero
id_numero
numero_telefonico
operatore
●
persona
id_persona
nome_persona
cognome_persona
residenza
impiego
Notiamo che nella rappresentazione di
"numero" non va inserito come attributo la
chiave esterna "id_persona".
Un esempio di modellizzazione
●
●
●
Questa modo di rappresentare un db è
chiamato "Crow's Foot Notation".
Notiamo che la "zampa di corvo" va dalla parte
del "molti" (in questo caso sull'entità "numero").
In buona sostanza sull'entità che ha la chiave
esterna....
Il processo che permette di modellizzare un
database viene comunemente chiamato
"diagramma Entità-Relazione" (oppure E/R).