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 KEY ATTRIBUTI 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