Modellazione dei Dati Fabio Scanu a.s. 2012/2013.
-
Upload
alvise-bonelli -
Category
Documents
-
view
216 -
download
0
Transcript of Modellazione dei Dati Fabio Scanu a.s. 2012/2013.
Modellazione dei Dati
Fabio Scanu a.s. 2012/2013
Modellazione dei Dati
Costruire una rappresentazione della realtà individuando:• Elementi caratterizzanti• Legami tra gli elementi
I Livelli di Progettazione
• Concettuale: rappresenta la realtà dei dati e le relazioni tra essi
• Logico: Rappresenta il modo in cui i dati sono organizzati
• Fisico: Rappresenta l’effettiva installazione degli archivi su disco
Entità - Relazione
• Introdotto nel 1976• Costruisce un modello concettuale
indipendentemente:• dalle applicazioni• dagli eventi che accadono
Entità
• E’ un oggetto• Ha significato anche quando è
considerato in modo isolato• E’ di interesse per la realtà che si vuole
modellare
Esempio
• Dato il contesto scuola entità di interesse sono:• Materie• Docenti• Studenti
Associazione
• E’ un legame che stabilisce l’interazione tra due entità
PERSONA AUTOMOBILE
Rappresentazione E/R
Persona Possiede Automobile
Attributi
• Entità e Associazioni hanno delle proprietà• Le proprietà si definiscono attributi• Un’automobile ha come attributo la targa• Una persona ha come attributo il codice
fiscale• L’associazione ha come attributo l’anno di
acquisto
Attributi• Caratteristiche:
• Formato (carattere, intero, data, blob)• Dimensione• Opzionalità• Unicità• Valore di default
• Dominio: Insieme dei possibili valori assunti dall’attributo
Attributo null
• Non è la stringa vuota «»• Non è un valore• Rappresenta la mancanza di
informazione
• Una relazione potrebbe avere uno o più attributi ma…
• UNA RELAZIONE CON PIU’ ATTRIBUTI POTREBBE CELARE LA PRESENZA DI UN’ENTITA’!
• Dipende dai punti di vista
Attributi Derivati
• Alcune informazioni non sono derivabili• Altre informazioni si possono rilevare
da attributi già presenti:• Età – Data di nascita• Saldo – Entrate, Uscite
• Aggiungere questi attributi provoca ridondanze
Ridondanza
• E’ la ripetizione di una stessa informazione all’interno della base di dati
• Causa problemi di inconsistenza in caso di aggiornamento
• …ricordiamolo quando parleremo di FORME NORMALI
Chiave Primaria(Primary Key)
• Insieme MINIMALE di attributi che permettono di distinguere tra loro le istanze di una stessa entità
• Persona ha come chiave primaria il Codice Fiscale
• Automobile ha come chiave primaria la Targa
• …nella teoria
Chiave Primaria(Primary Key)
…in pratica• Si utilizza un campo id che identifica
univocamente l’insieme di attributi• Codice Fiscale e Targa vanno bene nel
contesto italiano ma allargandoci?
PRIMARY KEYATTRIBUTI
Molteplicità delle relazioni
• Numero di possibili istanze di una entità che viene messa in corrispondenza con istanze di un’altra entità che partecipa alla relazione
Molteplicità delle relazioni
• Valore minimo:• 0 = La partecipazione è facoltativa• 1 = La partecipazione è obbligatoria
• Valore massimo:• 1 = Al massimo c’è una partecipazione• N = Ci sono molte partecipazioni
• CARDINALITA’: valore massimo
Molteplicità delle relazioni
• Associazione uno a uno 1:1• Associazione uno a molti 1:N• Associazione molti a molti N:N
Associazione biunivoca
• Associazione 1:1• Ad ogni istanza
della prima entità corrisponde una ed una sola istanza della seconda entità
Associazione Biunivoca
• Studente – Diploma Licenza Media• Ad uno studente corrisponde un solo diploma
e viceversa• Docente – coordina- Classe
• Un docente cordina 0 o 1 classe• Una classe è coordinata da 1 docente• L’associazione per docente è facoltativa• L’associazione per classe è obbligatoria
Associazione Biunivoca
Associazione Semplice
• Associazione 1:N• Ad ogni istanza della prima entità
posso associare più istanze della seconda entità
• MA ogni istanza della seconda entità può avere una sola istanza della prima
Associazione Semplice
• Conto Corrente – efefttua – Movimento• Ad un conto corrente sono associati più
movimenti (anche 0)• Ciascun movimento corrisponde ad un solo
conto corrente (1 ed uno solo!)
Associazione Complessa
• Associazione N:N• Ad ogni istanza della prima entità
posso associare più istanze della seconda entità
• E ogni istanza della seconda entità può avere più istanze della prima
Associazione Complessa
Un contesto noto……
DOCENTI e CLASSI