2. Via! 2/25
Basi di Dati e Microsoft Access
Concetti introduttivi, modello relazionale
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
3. A cosa servono? 3/25
•Cosa è una base di dati ?
•Anche se può sembrare un termine nuovo,
quotidianamente interagiamo con delle basi di dati
•Per semplificare, chiamiamoli “archivi” :-)
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
4. A cosa servono? 4/25
• Cosa è una base di dati ?
• Anche se può sembrare un termine nuovo, quotidianamente interagiamo
con delle basi di dati
• Per semplificare, chiamiamoli “archivi” :-)
• Rubrica telefonica
• Film di una videoteca
• Libri di una biblioteca
• Pazienti dell’ospedale
• ...anche Internet è una base di dati!
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
5. Diamo una definizione 5/25
“ Una base di dati è una particolare
tipologia di archivio in cui vengono
immagazzinate informazioni di tipo
omogeneo, al fine di semplificare la
memorizzazione e il ritrovamento
delle informazioni “
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
6. Basi di Dati 6/25
• Una base di dati è un archivio dove immagazziniamo informazioni.
• Quali sono i requisiti?
• Le informazioni devono essere di tipo omogeneo
• Omogeneo: di tipo uguale. Ciò significa che in un archivio di
libri possono essere memorizzati solo dei libri. In una rubrica
telefonica solo dei contatti, ecc.
• La base di dati deve essere organizzata in modo tale da
facilitare l’accesso e il ritrovamento delle informazioni
• Facciamo un esempio!
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
7. Basi di Dati | Scenario 7/25
•Biblioteca
•Archivio di libri (cartaceo)
•Come sono organizzati i libri nell’archivio? Con
che criterio sono ordinati?
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
8. Basi di Dati | Scenario 8/25
• Biblioteca
• Archivio di libri (cartaceo)
• Come sono organizzati i libri nell’archivio? Con che criterio sono ordinati?
• Generalmente: alfabetico
• Questo tipo di organizzazione rende “semplice” esaudire alcune richieste
• Esempio: trovami tutti i libri che cominciamo con la A
• Allo stesso tempo è molto complicato rispondere a richieste di altro tipo
• Esempio: trovami tutti i libri di un certo autore
• Esempio: trovami tutti i libri pubblicati nel 2008
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
9. Basi di Dati | Scenario | 2 9/25
•Per rispondere a richieste di tipo diverso dovremmo
ogni volta riordinare l’archivio oppure scorrere tutti
gli elementi a uno a uno
•Impossibile e poco efficiente!
•L’informatica ci fornisce supporto per rendere più
efficace queste attività e risolvere questa tipologia
di problemi?
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
10. Basi di Dati | Scenario | 2 10/25
•Per rispondere a richieste di tipo diverso dovremmo
ogni volta riordinare l’archivio oppure scorrere tutti
gli elementi a uno a uno
•Impossibile e poco efficiente!
•L’informatica ci fornisce supporto per rendere più
efficace queste attività e risolvere questa tipologia
di problemi?
•Si :-)
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
11. Basi di Dati | Ricapitoliamo 11/25
• Una base di dati è una evoluzione di un archivio cartaceo
• Permette di memorizzare più informazioni
• Perchè ovviamente lo spazio “fisico” necessario a contenere un archivio è più grande dello
spazio “virtuale” necessario a contenere dei dati
• Permette di ritrovare le informazioni più facilmente
• Nelle basi di dati è possibile fare delle ricerche complesse (es. trovami tutti i libri pubblicati
da un certo autore nel 2007). Queste ricerche si chiamano “interrogazioni”
• Ragionate in modo astratto
• Internet è una enorme base di dati dove è contenuta la “conoscenza”
• Conoscenza originariamente orale, poi divenuta scritta, stampata, digitale e infine distribuita in
Rete
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
12. Modello Relazionale 12/25
• Ma come si realizzano le basi di dati?
• L’attività di progettazione (e realizzazione) delle basi di dati segue un modello che prende
il nome di modello relazionale
• Secondo questo modello in ogni base di dati ci sono delle entità, ciascuna delle quali è
descritta da una serie di attributi. Queste entità sono legate tra di loro da alcune relazioni e
ogni oggetto presente nella base di dati deve essere identificato da un “codice” detto chiave.
• Ricapitolando, lo studio del modello relazionale richiede la comprensione di tre concetti
• Entità
• Attributi
• Relazione
• Chiave
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
13. Modello Relazionale | Entità 13/25
•Cos’è un’entità?
•Per definizione, un’entità è una cosa che “esiste”.
•Nel nostro caso, poichè lo scopo della base di dati è
rappresentare “una porzione” del mondo reale,
un’entità è qualcosa che esiste in questa
rappresentazione
•Esempio: una biblioteca
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
14. Modello Relazionale | Entità | 2 14/25
• Cosa “esiste” in una biblioteca?
• i libri
• gli utenti della biblioteca (più il bibliotecario,
eventualmente)
• Una base di dati che si occupa di modellare un archivio
di una biblioteca dovrà quindi contenere almeno due
entità: i libri e gli utenti
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
15. Modello Relazionale | Attributi 15/25
•Ogni entità è descritta da un insieme di attributi
•Un attributo è una caratteristica dell’entità
•Esempio
•Quali sono gli attributi di un libro?
•Quali sono gli attributi di un utente? (o più in generale
di un individuo)
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
16. Modello Relazionale | Attributi | 2 16/25
• Ogni entità è descritta da un insieme di attributi
• Un attributo è una caratteristica dell’entità
• Esempio
• Quali sono gli attributi di un libro?
• Titolo, Autore, Genere, Casa Editrici, Codice ISBN, Anno di
Pubblicazione, ecc.
• Quali sono gli attributi di un utente? (o più in generale di un individuo)
• Codice Fiscale, Nome, Cognome, Data di Nascita, Città di Nascita,
Residenza, ecc.
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
17. Modello Relazionale | Chiave 17/25
•Ogni entità possiede un’attributo che è detto
“chiave”
•La chiave è un attributo che permette di
identificare l’entità in modo “univoco”
•Quale attributo ci permette di identificare in modo
univoco un libro?
•Quale ci permette di identificare in modo univoco
l’utente?
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
18. Modello Relazionale | Chiave | 2 18/25
• Ogni entità possiede un’attributo che è detto “chiave”
• La chiave è un attributo che permette di identificare
l’entità in modo “univoco”
• Quale attributo ci permette di identificare in modo univoco un
libro?
• Il codice ISBN
• Quale ci permette di identificare in modo univoco l’utente?
• Il codice Fiscale
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
19. Modello Relazionale | Ennupla 19/25
•L’ultimo concetto da spiegare che riguarda il
modello relazionale è il concetto di “ennupla”
•Definizione formale:
•Una ennupla è una istanza dell’entità
•Definizione intuitiva:
•Una ennupla è un “oggetto” presente nella base di
dati. Ad esempio un libro.
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
20. Modello Relazionale | Ennupla | 2 20/25
• Data una entità, come si costruisce una ennupla?
• Associando a ciascuno degli attributi un valore valido
• Ad esempio, supponendo che l’entità sia “film”, e che gli attributi
siano “titolo”, “regista”, “anno di produzione”, “durata”, ecc. una
possibile ennupla è
• Titolo: V per Vendetta
• Regista: J. McTegue
• Anno: 2005
• Durata: 132 min.
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
21. Modello Relazionale | Ennupla | 3 21/25
• Associate a ciascuna entità ci possono ovviamente essere
un numero infinito di ennuple. Le entità possono anche
essere chiamate “tabelle”
• Ps
• Ora possiamo anche dare una definizione più precisa di
“chiave”
• La chiave è un attributo che identifica univocamente una
ennupla!
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
22. Modello Relazionale | Relazioni 22/25
•Una relazione è un legame che unisce due entità
modellate nella stessa base di dati
•Ad esempio, nello scenario della biblioteca, date come
entità “utente” e “libro” che tipo di relazione possiamo
definire?
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
23. Modello Relazionale | Relazioni 23/25
• Una relazione è un legame che unisce due entità modellate
nella stessa base di dati
• Ad esempio, nello scenario della biblioteca, date come entità
“utente” e “libro” che tipo di relazione possiamo definire?
• Noleggio
• Una relazione è dunque un atto che “lega” due entità.
• Memorizziamo le informazioni relative a quali libri sono
stati presi in prestito dagli utenti della biblioteca
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
24. Modello Relazionale | Interrogazioni 24/25
• Il modello relazionale ci offre degli strumenti per rappresentare le informazioni in modo efficace
• Come facciamo però per estrarre dati interessanti dalla base di dati?
• Quanti libri prendono in prestito in media gli utenti ogni anno?
• Qual è il libro più scelto dagli utenti nati nel 1995
• Chi sono gli utenti che abitano a Corato ?
• Quali libri di oltre 200 pagine vengono tenuti in prestito per meno di un mese?
• ....e così via
• Con un archivio “cartaceo” sarebbe impossibile estrarre questo tipo di informazioni
• Con un archivio “digitale” lo strumento delle interrogazioni ci permette di estrarre rapidamente
queste informazioni. Vedremo come fare con Microsoft Access :-)
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
25. Conclusioni 25/25
• I database rappresentano un’evoluzione dei classici archivi
cartacei
• L’informazione è organizzata in modo tale da facilitare
l’organizzazione e il ritrovamento
• Le basi di dati vengono progettate seguendo il modello
relazionale
• Il modello relazionale prevede che la base di dati venga
modellata rappresentando entità, relazioni ed attributi
• Il modello relazionale permette interrogazioni complesse su
oggetti memorizzati all’interno della base di dati
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
26. Fine
Domande?
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
28. Prossima Lezione
ven 19 nov 2010
• Esercitazione
• Microsoft Windows
• Microsoft Word
• Microsoft Excel
• Le lezioni dello scorso anno sono disponibili online:
• Microsoft Windows (Lezione 09-10)
• Microsoft Word (Lezione 09-10)
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto