modellazione dei dati fabio scanu a.s. 2012/2013
TRANSCRIPT
![Page 1: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/1.jpg)
Modellazione dei Dati
Fabio Scanu a.s. 2012/2013
![Page 2: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/2.jpg)
Modellazione dei Dati
Costruire una rappresentazione della realtà individuando:• Elementi caratterizzanti• Legami tra gli elementi
![Page 3: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/3.jpg)
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
![Page 4: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/4.jpg)
Entità - Relazione
• Introdotto nel 1976• Costruisce un modello concettuale
indipendentemente:• dalle applicazioni• dagli eventi che accadono
![Page 5: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/5.jpg)
Entità
• E’ un oggetto• Ha significato anche quando è
considerato in modo isolato• E’ di interesse per la realtà che si vuole
modellare
![Page 6: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/6.jpg)
Esempio
• Dato il contesto scuola entità di interesse sono:• Materie• Docenti• Studenti
![Page 7: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/7.jpg)
Associazione
• E’ un legame che stabilisce l’interazione tra due entità
PERSONA AUTOMOBILE
![Page 8: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/8.jpg)
Rappresentazione E/R
Persona Possiede Automobile
![Page 9: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/9.jpg)
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
![Page 10: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/10.jpg)
Attributi• Caratteristiche:
• Formato (carattere, intero, data, blob)• Dimensione• Opzionalità• Unicità• Valore di default
• Dominio: Insieme dei possibili valori assunti dall’attributo
![Page 11: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/11.jpg)
Attributo null
• Non è la stringa vuota «»• Non è un valore• Rappresenta la mancanza di
informazione
![Page 12: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/12.jpg)
• 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
![Page 13: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/13.jpg)
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
![Page 14: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/14.jpg)
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
![Page 15: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/15.jpg)
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
![Page 16: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/16.jpg)
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?
![Page 17: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/17.jpg)
PRIMARY KEYATTRIBUTI
![Page 18: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/18.jpg)
![Page 19: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/19.jpg)
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
![Page 20: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/20.jpg)
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
![Page 21: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/21.jpg)
Molteplicità delle relazioni
• Associazione uno a uno 1:1• Associazione uno a molti 1:N• Associazione molti a molti N:N
![Page 22: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/22.jpg)
Associazione biunivoca
• Associazione 1:1• Ad ogni istanza
della prima entità corrisponde una ed una sola istanza della seconda entità
![Page 23: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/23.jpg)
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
![Page 24: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/24.jpg)
Associazione Biunivoca
![Page 25: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/25.jpg)
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
![Page 26: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/26.jpg)
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!)
![Page 27: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/27.jpg)
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
![Page 28: Modellazione dei Dati Fabio Scanu a.s. 2012/2013](https://reader035.vdocuments.site/reader035/viewer/2022062702/5542eb74497959361e8dbe71/html5/thumbnails/28.jpg)
Associazione Complessa
Un contesto noto……
DOCENTI e CLASSI