informatica introduzione alle basi di dati · –azienda privata, pubblica, info private (pim),...
TRANSCRIPT
![Page 1: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/1.jpg)
Informatica Introduzione alle basi di dati
Prof. Giovanni Giuffrida
e-mail: [email protected]
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 1
![Page 2: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/2.jpg)
Materiale didattico
• Slides del corso
• Atzeni,Ceri,Paraboschi,Torlone, Basi di Dati,Modelli e linguaggi di
interrogazione, terza edizione, McGraw-Hill 2002.
• Albano-Ghelli-Orsini, Basi di Dati Relazionali e a Oggetti, Zanichelli, 1997
• Ullman, Basi di Dati e Basi di Conoscenza
• Access: Manuale utente
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 2
![Page 3: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/3.jpg)
Sistema informativo
• Componente (sottosistema) di qualsiasi organizzazione– Azienda privata, pubblica, info private (PIM), famiglia, etc.
• Gestisce (acquisisce, elabora, conserva, produce) le informazioni di interesse (i.e., utilizzate per il perseguimentodegli scopi dell’organizzazione)– ogni organizzazione ha un sistema informativo, possibilmente non
esplicitato nella struttura stessa
– quasi sempre, il sistema informativo è di supporto ad altri sottosistemi
– il sistema informativo è di solito suddiviso in sottosistemi (in modogerarchico o decentrato), più o meno fortemente integrati
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 3
![Page 4: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/4.jpg)
Sistema organizzativo
• Insieme di risorse e regole per lo svolgimento coordinato delle attività al fine del perseguimento degli scopi
– il sistema informativo è parte del sistema organizzativo
– il sistema informativo esegue/gestisce processi informativi (cioè i processi che coinvolgono informazioni)
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 4
![Page 5: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/5.jpg)
Risorse aziendali
• le risorse di una azienda:
– persone
– denaro
– materiali
– informazioni
• Oggi viviamo nell‘era della conoscenza
• Il capitale principale delle organizzazioni è rappresentato dalla conoscenza (basata sui dati)
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 5
![Page 6: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/6.jpg)
Sistemi informativi e automazione
• Il concetto di “sistema informativo” è indipendenteda qualsiasi automazione
• esistono organizzazioni la cui ragion d’essere è la gestione di informazioni– Es.: servizi anagrafici, tribunali, biblioteche, etc
– Operano da secoli
– La gestione delle loro informazioni si è evoluta nel tempo • Ma ciò non altera l‘obiettivo dell‘organizzazione!
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 6
![Page 7: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/7.jpg)
Sistema Informatico
• Porzione automatizzata del sistema informativo:– la parte del sistema informativo che gestisce informazioni con tecnologia informatica
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 7
Sistema organizzativo
Sistema informativo
Sistema informatico
![Page 8: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/8.jpg)
Sistema informativo e sistema informatico
• Anche prima di essere informatizzati, molti sistemi informativi si sono evoluti– Razionalizzazione delle procedure di accesso ai dati
– Standardizzazione dell’esecuzione delle procedure
– Organizzazione delle informazioni
– Duplicazione degli archivi
• Esempi:– Uffici anagrafe– Contabilità familiare– Ordinazione al ristorante
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 8
![Page 9: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/9.jpg)
Gestione delle informazioni
• Nelle attività umane, le informazioni vengono gestite (registrate e scambiate) in forme diverse:
– idee informali
– linguaggio naturale (scritto o parlato, formale o colloquiale, in una lingua o in un’altra)
– disegni, grafici, schemi
– numeri e codici
• e su vari supporti
– memoria umana, carta, dispositivi elettronici
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 9
![Page 10: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/10.jpg)
Gestione delle informazioni
• Nelle attività standardizzate dei sistemi informativi complessi, sono state introdotte col tempo forme di organizzazione e codifica delle informazioni
• Ad esempio, nei servizi anagrafici si è iniziato con registrazioni discorsive e poi
– nome e cognome
– estremi anagrafici
– codice fiscale
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 10
![Page 11: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/11.jpg)
Informazioni e dati
• Nei sistemi informatici (e non solo), le informazioni vengonorappresentate in modo essenziale, spartano: attraverso i dati
• Dal Vocabolario della lingua italiana (1987)informazione: notizia, dato o elemento che consente di avere
conoscenza più o meno esatta di fatti, situazioni, modi di essere. dato: ciò che è immediatamente presente alla conoscenza, prima di ogni
elaborazione; (in informatica) elementi di informazione costituiti da simboli che debbono essere elaborati.
• Informazione può essere vista come un‘interpretazionesemantica dei dati– Dipendente dal contesto
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 11
![Page 12: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/12.jpg)
Dati e informazioni
• I dati hanno bisogno di essere interpretati
Esempio
‘Mario’ ’275’ su un foglio di carta sono due dati.
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 12
![Page 13: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/13.jpg)
Dati e informazioni
• I dati hanno bisogno di essere interpretati
Esempio
‘Mario’ ’275’ su un foglio di carta sono due dati.
Se il foglio di carta viene fornito in risposta alla domanda “A chi mi devo rivolgere per il problema X; qual è il suo interno?”, allora i dati possono essere interpretati per fornire informazione e arricchire la conoscenza.
Oppure, soldi che Mario mi deve
Oppure, giorni lavorativi di Mario
Etc. Etc.
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 13
![Page 14: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/14.jpg)
Perché i dati?
• La rappresentazione precisa di forme più ricche di informazione e conoscenza è difficile
• I dati costituiscono spesso una risorsastrategica
– Più stabili nel tempo di altre componenti quali processi, tecnologie, ruoli umani
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 14
![Page 15: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/15.jpg)
Base di dati
Insieme organizzato di dati utilizzati per il
supporto allo svolgimento delle attività di un
ente (azienda, ufficio, personale)
• Tecnologicamente parlando:
– Insieme di dati gestito da un sistema software
dedicato alla gestione di basi di dati
– Data Base Management System (DBMS)
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 15
![Page 16: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/16.jpg)
Sistema di gestione di basi di datiDataBase Management System — DBMS
Applicazione software in grado di gestire collezioni di dati che siano:
– Grandi: di dimensioni (molto) maggiori della memoria centrale dei sistemi di calcolo utilizzati
– Persistenti: con un periodo di vita indipendente dalle singole esecuzioni deiprogrammi che le utilizzano
– Affidabili: resistenza a malfunzionamenti hardware e software, blackout, etc.
– Condivise: utilizzate da applicazioni diverse anche in località geografichediverse
– Private: con una disciplina e un controllo degli accessi
• Come ogni prodotto informatico, un DBMS deve essere
– Efficiente: utilizzando al meglio le risorse di spazio e tempo del sistema
– Efficace: rendendo produttive le attività dei suoi utilizzatori
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 16
![Page 17: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/17.jpg)
Alcuni DBMS in commercio
• Business estremamente grosso e profittevole
• Alcuni sistemi– Microsoft Access
– IBM-DB2
– Oracle
– Informix
– Sybase
– Microsoft SQLServer
– Ingres
– MySql (open-source)
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 17
![Page 18: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/18.jpg)
Condivisione dei dati
• Ogni organizzazione (specie se grande) è divisa in settori o comunque svolge diverse attività
• A ciascun settore o attività corrisponde un(sotto-)sistema informativo
• Possono esistere sovrapposizioni fra i dati di interesse dei vari settori
• Una base di dati è una risorsa integrata, condivisa frai vari settori
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 18
![Page 19: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/19.jpg)
Possibili problemi nella condivisione dei dati
• Ridondanza:
– informazioni duplicate
• Rischio di incoerenza:
– le versioni possono non coincidere
• L’incoerenza tra i dati è un problema frequente nelle grandi organizzazioni (e molto complicato a volte da risolvere)
– Le basi di dati condivise hanno aiutato molto
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 19
![Page 20: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/20.jpg)
Archivi e basi di dati
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 20
Gestione
ricevimentoArchivio 2:
ricevimento
Gestione
orario lezioniArchivio 1:
orario lezioni
![Page 21: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/21.jpg)
Archivi e basi di dati
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 21
Gestione
ricevimento
Gestione
orario lezioni
Base di dati
![Page 22: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/22.jpg)
Le basi di dati condivise
• Una base di dati e' una risorsa integrata e condivisa tra varie applicazioni e vari utenti
• Attivita' diverse da parte di diversi utenti su
dati in parte condivisi:
– Meccanismi di autorizzazione
– Controllo degli accessi
– Controllo della concorrenza, accesso ai dati in
competizione
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 22
![Page 23: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/23.jpg)
Efficienza
• Si misura (come in tutti i sistemi informatici) in termini di– tempo di esecuzione (tempo di risposta)
– spazio di memoria (principale e secondaria)
• L’efficienza è funzione di vari fattori– Qualità del DBMS
– Qualità delle applicazioni che usano il DBMS
– Manutenzione del DBMS
– Caratteristiche del server
– Ecc.
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 23
![Page 24: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/24.jpg)
Architettura standard (ANSI/SPARC)a tre livelli per DBMS
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 24
BD
Schema logico
Schema
esterno
Schema fisico
Schema
esterno
Schema
esterno
utenteutente
utenteutente utente
![Page 25: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/25.jpg)
Architettura ANSI/SPARC: schemi
• Schema esterno: descrizione di parte della base di dati del modello logico (“viste” parziali, derivate, anche in modelli diversi)
• Schema logico: descrizione dell’intera base di dati nel modello logico “principale” del DBMS
• Schema fisico: rappresentazione dei dati per mezzo di strutture fisiche di memorizzazione sui dischi rigidi
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 25
![Page 26: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/26.jpg)
Astrazione dei dati nei DBMS
• Descrizioni e rappresentazione dei dati a livelli diversi di astrazione
• I livelli seguono un ordine ben preciso
• Ciò permette l’indipendenza dei dati dalla loro rappresentazione fisica sugli hard-disk:
– i programmi fanno riferimento alla struttura a livello più alto, e le rappresentazioni sottostanti possono essere modificate senza necessità di modifica dei programmi
– La rappresentazione ad un livello può cambiare nel tempo senza bisogno di cambiare i livelli sovrastranti
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 26
![Page 27: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/27.jpg)
Modello dei dati
• Insieme di costrutti e metodi utilizzati per organizzare i dati di interesse e descriverne la dinamica
• Componente fondamentale: meccanismi di strutturazione (o costruttori di tipo)
• Ogni modello dei dati prevede specifici costruttori
• Ad esempio, il modello relazionale prevede il costruttorerelazione, che permette di definire insiemi di record omogenei
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 27
![Page 28: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/28.jpg)
Due tipi principali di modelli
• Modelli concettuali: permettono di rappresentare i dati in modo indipendente da ogni sistema– cercano di descrivere i concetti del mondo reale
– sono utilizzati nelle fasi preliminari di progettazione
– Il più noto è il modello Entity-Relationship
• Modelli logici: utilizzati nei DBMS esistenti per l’organizzazione dei dati– utilizzati dai programmi
– indipendenti dalle strutture fisiche
– esempi: relazionale, reticolare, gerarchico, a oggetti
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 28
![Page 29: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/29.jpg)
Organizzazione dei dati nel modello relazionale
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 29
Insegnamento Docente Aula Ora
Analisi matem. I Luigi Neri N1 8:00Basi di dati Piero Rossi N2 9:45
Chimica Nicola Mori N1 9:45Fisica I Mario Bruni N1 11:45Fisica II Mario Bruni N3 9:45
Sistemi inform. Piero Rossi N3 8:00
Orario
![Page 30: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/30.jpg)
Schemi e istanze
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 30
• Lo schema della base di dati
Insegnamento Docente Aula Ora
![Page 31: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/31.jpg)
Schemi e istanze
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 31
• L’istanza della base di dati
Analisi matem. I Luigi Neri N1 8:00Basi di dati Piero Rossi N2 9:45
Chimica Nicola Mori N1 9:45Fisica I Mario Bruni N1 11:45Fisica II Mario Bruni N3 9:45
Sistemi inform. Piero Rossi N3 8:00
![Page 32: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/32.jpg)
Schemi e istanze
• In ogni base di dati esistono:
– Aspetto intensionale: lo schema• Sostanzialmente invariante nel tempo
• Descrive la struttura
• Nell’esempio, le intestazioni delle tabelle
– Aspetto estensionale: l’istanza• I valori possono cambiare anche molto
rapidamente
• Raccoglie i dati
• Nell’esempio, il “corpo” di ciascuna tabella
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 32
![Page 33: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/33.jpg)
Esempio di DB relazionale
Matr_Studente Corso Voto
678 Programmazione 27
456 Architettura 30
567 Programmazione 18
678 Matematica 22
678 Architettura 30
456 Statistica 19
678 Statistica 22
567 Matematica 18
Denominazione Docente
Programmazione Ferro
Architettura Pappalardo
Matematica Lizzio
Statistica Lizzio
Studenti
Esami
Corsi
Nome Matricola Indirizzo Citta Luogo di nascita
Mario Rossi 456 Via Roma 1 Catania Catania
Ugo Bianchi 567 Via Etnea 154 Enna Ragusa
Teo Verdi 678 Via Parma 12 Catania Enna
Leo Poldo 768 Piazza Roma 1 Ragusa Ragusa
![Page 34: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/34.jpg)
Esempio di query
Quali docent hanno
dato piu’ di 24 a Teo
Verdi ed in quali
corsi?
Corso Docente
Programmazione Ferro
Architettura Pappalardo
![Page 35: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/35.jpg)
Linguaggi per basi di dati
• Permettono interrogazioni formali delle basi di dati nel modello logicoutilizzato
• Algebra relazionale: Formalismo di base per la formalizzazione diinterrogazioni nel modello relazionale (la madre di tutti i modelli)
• SQL (Structured Query Language): Linguaggio di tipo testuale per basi didati relazionali– Adottato da tutti i sistemi DBMS relazionali
• Interfacce visuali (tipo Access)• I vari linguaggi di programmazione (e.g. Java) permettono di interrogare le
basi di dati incorporando SQL al loro interno• New: Linguaggi No-SQL
– Ancora in definizione– Non strutturati– Efficienti– Imprecisi
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 35
![Page 36: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/36.jpg)
Esempio di SQL
SELECT Corso, Aula, PianoFROM Aule, CorsiWHERE Nome = AulaAND Piano="Terra"
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 36
Corso Aula
Reti N3
Sistemi N3
Piano
Terra
Terra
![Page 37: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/37.jpg)
Interazione non testuale (in Access)
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 37
![Page 38: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/38.jpg)
Una distinzione terminologica (separazione fra dati e programmi)
• Data manipulation language (DML)
– Per l’interrogazione e l’aggiornamento di (istanze di) basi di dati
• Data definition language (DDL)
– Per la definizione di schemi (logici, esterni, fisici) e altre operazioni generali
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 38
![Page 39: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/39.jpg)
Un'operazione DDL (sullo schema)
CREATE TABLE orario (
insegnamento CHAR(20) ,
docente CHAR(20) ,
aula CHAR(4) ,
ora time
)
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 39
![Page 40: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/40.jpg)
Transazioni
• Programmi che realizzano attività frequenti e predefinite, conpoche eccezioni, previste a priori
• Esempi: – versamento presso uno sportello bancario
– emissione di certificato anagrafico
– dichiarazione presso l’ufficio di stato civile
– prenotazione aerea
• Le transazioni sono di solito realizzate con programmi in linguaggio ospite (tradizionale o ad hoc)
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 40
![Page 41: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/41.jpg)
Transazioni
• Altra definizione importante di transazione:– Sequenza indivisibile di operazioni
• Atomicità: O vengono eseguite tutte le operazioni o nessuna
• I DBMS sono in grado di garantire l‘atomicità delle transazioni
• Costrutti per marcare l‘inizio e la fine della transazione
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 41
![Page 42: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/42.jpg)
Vantaggi e svantaggi dei DBMS
Pro
• dati come risorsa comune, base di dati come modello della realtà
• gestione centralizzata con possibilità di standardizzazione ed “economia discala”
• disponibilità di servizi integrati
• riduzione di ridondanze e inconsistenze
• indipendenza dei dati (favorisce lo sviluppo e la manutenzione delleapplicazioni)
Contro
• costo dei prodotti e della transizione verso di essi
• non scorporabilità delle funzionalità (con riduzione di efficienza)
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 42
![Page 43: Informatica Introduzione alle basi di dati · –Azienda privata, pubblica, info private (PIM), famiglia, etc. • Gestisce (acquisisce, elabora, conserva, produce) le informazioni](https://reader033.vdocuments.pub/reader033/viewer/2022042204/5ea5823f96d3c05e6376bac5/html5/thumbnails/43.jpg)
FINE
15 December 2016 Basi di Dati - Introd. - Prof. G. Giuffrida 43