Introduzione alle Basi di Dati - isa.cnr.it · 3 AA 2010-2011, Basi di Dati, Prof. Antonio...

21
Introduzione alle Basi di Dati Introduzione alle Basi di Dati Introduzione alle Basi di Dati Introduzione alle Basi di Dati Angelo Angelo Angelo Angelo Chianese Chianese Chianese Chianese, Vincenzo Moscato, Antonio , Vincenzo Moscato, Antonio , Vincenzo Moscato, Antonio , Vincenzo Moscato, Antonio Picariello Picariello Picariello Picariello, Lucio Sansone , Lucio Sansone , Lucio Sansone , Lucio Sansone Basi di dati per la gestione dell'informazione Basi di dati per la gestione dell'informazione Basi di dati per la gestione dell'informazione Basi di dati per la gestione dell'informazione 2/ed 2/ed 2/ed 2/ed McGraw McGraw McGraw McGraw- - -Hill Hill Hill Hill Capitolo 1 Capitolo 1 Capitolo 1 Capitolo 1 Appunti dalle lezioni Appunti dalle lezioni Appunti dalle lezioni Appunti dalle lezioni

Transcript of Introduzione alle Basi di Dati - isa.cnr.it · 3 AA 2010-2011, Basi di Dati, Prof. Antonio...

Introduzione alle Basi di DatiIntroduzione alle Basi di DatiIntroduzione alle Basi di DatiIntroduzione alle Basi di Dati

Angelo Angelo Angelo Angelo ChianeseChianeseChianeseChianese, Vincenzo Moscato, Antonio , Vincenzo Moscato, Antonio , Vincenzo Moscato, Antonio , Vincenzo Moscato, Antonio PicarielloPicarielloPicarielloPicariello, Lucio Sansone , Lucio Sansone , Lucio Sansone , Lucio Sansone

Basi di dati per la gestione dell'informazione Basi di dati per la gestione dell'informazione Basi di dati per la gestione dell'informazione Basi di dati per la gestione dell'informazione 2/ed2/ed2/ed2/edMcGrawMcGrawMcGrawMcGraw----HillHillHillHillCapitolo 1Capitolo 1Capitolo 1Capitolo 1

Appunti dalle lezioniAppunti dalle lezioniAppunti dalle lezioniAppunti dalle lezioni

2 AA 2010-2011, Basi di Dati, Prof. Antonio d’Acierno, [email protected] Introduzione alle basi di dati

Sistemi informativi e basi di dati

Il modello relazionale

SQL come DDL

SQL come DML

SQL come DCL

La Progettazione Concettuale

Strumenti CASE

Utilizzo di un DBMS Reale

Programmazione

Forme normali

Transazioni e tecnologie di supporto

Basi di dati direzionali

Basi di dati distribuite

La Progettazione Logica

La Progettazione Fisica

3 AA 2010-2011, Basi di Dati, Prof. Antonio d’Acierno, [email protected] Introduzione alle basi di dati

Sistemi InformativiSistemi InformativiSistemi InformativiSistemi Informativi

� L'informazione rappresenta uno dei beni piL'informazione rappresenta uno dei beni piL'informazione rappresenta uno dei beni piL'informazione rappresenta uno dei beni piùùùù preziosi preziosi preziosi preziosi di una qualsiasi organizzazione.di una qualsiasi organizzazione.di una qualsiasi organizzazione.di una qualsiasi organizzazione.

� EEEE’’’’ una risorsa particolare che tende ad accrescersi.una risorsa particolare che tende ad accrescersi.una risorsa particolare che tende ad accrescersi.una risorsa particolare che tende ad accrescersi.

� Processo aziendaleProcesso aziendaleProcesso aziendaleProcesso aziendale– Sequenza di attivitSequenza di attivitSequenza di attivitSequenza di attivitàààà aziendali finalizzate alla aziendali finalizzate alla aziendali finalizzate alla aziendali finalizzate alla realizzazione di un prodotto o servizio che coinvolge pirealizzazione di un prodotto o servizio che coinvolge pirealizzazione di un prodotto o servizio che coinvolge pirealizzazione di un prodotto o servizio che coinvolge piùùùùrisorse : materiali, organizzative, risorse : materiali, organizzative, risorse : materiali, organizzative, risorse : materiali, organizzative, informativeinformativeinformativeinformative....

� Sistema informativo (definizione informale)Sistema informativo (definizione informale)Sistema informativo (definizione informale)Sistema informativo (definizione informale)– Insieme di componenti necessari per gestire le Insieme di componenti necessari per gestire le Insieme di componenti necessari per gestire le Insieme di componenti necessari per gestire le informazioni dei processi aziendaliinformazioni dei processi aziendaliinformazioni dei processi aziendaliinformazioni dei processi aziendali

4 AA 2010-2011, Basi di Dati, Prof. Antonio d’Acierno, [email protected] Introduzione alle basi di dati

ComponentiComponentiComponentiComponenti

� Patrimonio di datiPatrimonio di datiPatrimonio di datiPatrimonio di dati– materia grezza con cui si materia grezza con cui si materia grezza con cui si materia grezza con cui si producono informazioniproducono informazioniproducono informazioniproducono informazioni

� Insieme di procedureInsieme di procedureInsieme di procedureInsieme di procedure– per acquisizione, trattamento, per acquisizione, trattamento, per acquisizione, trattamento, per acquisizione, trattamento, produzione informazioniproduzione informazioniproduzione informazioniproduzione informazioni

� Insieme di risorse umaneInsieme di risorse umaneInsieme di risorse umaneInsieme di risorse umane– che sovraintendono alle che sovraintendono alle che sovraintendono alle che sovraintendono alle procedureprocedureprocedureprocedure

� Insieme di mezzi e strumentiInsieme di mezzi e strumentiInsieme di mezzi e strumentiInsieme di mezzi e strumenti– per lper lper lper l’’’’archiviazione ed il archiviazione ed il archiviazione ed il archiviazione ed il trattamento di informazionitrattamento di informazionitrattamento di informazionitrattamento di informazioni

5 AA 2010-2011, Basi di Dati, Prof. Antonio d’Acierno, [email protected] Introduzione alle basi di dati

Sistema InformativoSistema InformativoSistema InformativoSistema Informativo

� In maniera formale: In maniera formale: In maniera formale: In maniera formale:

– un sistema informativo un sistema informativo un sistema informativo un sistema informativo èèèè llll’’’’insieme delle componenti di insieme delle componenti di insieme delle componenti di insieme delle componenti di unununun’’’’organizzazione destinato allaorganizzazione destinato allaorganizzazione destinato allaorganizzazione destinato alla

�AcquisizioneAcquisizioneAcquisizioneAcquisizione

�Archiviazione Archiviazione Archiviazione Archiviazione

� ElaborazioneElaborazioneElaborazioneElaborazione

� Trasmissione Trasmissione Trasmissione Trasmissione

– delldelldelldell’’’’informazione secondo quando informazione secondo quando informazione secondo quando informazione secondo quando ““““prescrittoprescrittoprescrittoprescritto””””dalle attivitdalle attivitdalle attivitdalle attivitàààà (funzioni) del processi aziendali (funzioni) del processi aziendali (funzioni) del processi aziendali (funzioni) del processi aziendali per la realizzazione del prodotto o del servizio. per la realizzazione del prodotto o del servizio. per la realizzazione del prodotto o del servizio. per la realizzazione del prodotto o del servizio.

6 AA 2010-2011, Basi di Dati, Prof. Antonio d’Acierno, [email protected] Introduzione alle basi di dati

Sistema InformaticoSistema InformaticoSistema InformaticoSistema Informatico

� Un sistema informatico Un sistema informatico Un sistema informatico Un sistema informatico èèèè la tecnologia a supporto la tecnologia a supporto la tecnologia a supporto la tecnologia a supporto del sistema informativo:del sistema informativo:del sistema informativo:del sistema informativo:– Macchine hardware;Macchine hardware;Macchine hardware;Macchine hardware;

– Programmi software;Programmi software;Programmi software;Programmi software;

– Banche di dati e sistemi di gestione;Banche di dati e sistemi di gestione;Banche di dati e sistemi di gestione;Banche di dati e sistemi di gestione;

– Reti di comunicazione.Reti di comunicazione.Reti di comunicazione.Reti di comunicazione.

� Secondo una definizione alternativa, considerata Secondo una definizione alternativa, considerata Secondo una definizione alternativa, considerata Secondo una definizione alternativa, considerata spesso equivalente, un sistema informatico spesso equivalente, un sistema informatico spesso equivalente, un sistema informatico spesso equivalente, un sistema informatico èèèè la la la la parte automatizzata di un sistema informativo.parte automatizzata di un sistema informativo.parte automatizzata di un sistema informativo.parte automatizzata di un sistema informativo.

7 AA 2010-2011, Basi di Dati, Prof. Antonio d’Acierno, [email protected] Introduzione alle basi di dati

Informazione vs. DatoInformazione vs. DatoInformazione vs. DatoInformazione vs. Dato

� Informazione <=> notizia che consente di avere conoscenza Informazione <=> notizia che consente di avere conoscenza Informazione <=> notizia che consente di avere conoscenza Informazione <=> notizia che consente di avere conoscenza (pi(pi(pi(piùùùù o meno esatta) di fatti.o meno esatta) di fatti.o meno esatta) di fatti.o meno esatta) di fatti.

� Dato <=> ciò che Dato <=> ciò che Dato <=> ciò che Dato <=> ciò che èèèè immediatamente presente alla immediatamente presente alla immediatamente presente alla immediatamente presente alla conoscenza, senza elaborazione.conoscenza, senza elaborazione.conoscenza, senza elaborazione.conoscenza, senza elaborazione.

� Esempio:Esempio:Esempio:Esempio:– la stringa (i dati) la stringa (i dati) la stringa (i dati) la stringa (i dati) ““““Mario Rossi 25576Mario Rossi 25576Mario Rossi 25576Mario Rossi 25576”””” non ha significato. non ha significato. non ha significato. non ha significato. – Se la ricevo in risposta alla domandaSe la ricevo in risposta alla domandaSe la ricevo in risposta alla domandaSe la ricevo in risposta alla domanda““““Chi eChi eChi eChi e’’’’ il capo del personale e quale eil capo del personale e quale eil capo del personale e quale eil capo del personale e quale e’’’’ il suo numero di telefono?il suo numero di telefono?il suo numero di telefono?il suo numero di telefono?”””” allora allora allora allora i dati diventano informazionei dati diventano informazionei dati diventano informazionei dati diventano informazione

8 AA 2010-2011, Basi di Dati, Prof. Antonio d’Acierno, [email protected] Introduzione alle basi di dati

BASI DI DATIBASI DI DATIBASI DI DATIBASI DI DATI

� Una prima definizione di Base di Dati (DB, Una prima definizione di Base di Dati (DB, Una prima definizione di Base di Dati (DB, Una prima definizione di Base di Dati (DB, database) database) database) database) – insieme (collezione) di dati usati per rappresentare le insieme (collezione) di dati usati per rappresentare le insieme (collezione) di dati usati per rappresentare le insieme (collezione) di dati usati per rappresentare le informazioni di interesse in un certo contesto.informazioni di interesse in un certo contesto.informazioni di interesse in un certo contesto.informazioni di interesse in un certo contesto.

� Tipicamente, le basi di dati hanno caratteristiche Tipicamente, le basi di dati hanno caratteristiche Tipicamente, le basi di dati hanno caratteristiche Tipicamente, le basi di dati hanno caratteristiche pipipipiùùùù stabili rispetto alle procedure che operano su di stabili rispetto alle procedure che operano su di stabili rispetto alle procedure che operano su di stabili rispetto alle procedure che operano su di essi.essi.essi.essi.

� LLLL’’’’approccio convenzionale alla gestione di DB approccio convenzionale alla gestione di DB approccio convenzionale alla gestione di DB approccio convenzionale alla gestione di DB sfrutta la presenza di sfrutta la presenza di sfrutta la presenza di sfrutta la presenza di filesfilesfilesfiles per memorizzare sulle per memorizzare sulle per memorizzare sulle per memorizzare sulle memorie di massa.memorie di massa.memorie di massa.memorie di massa.

9 AA 2010-2011, Basi di Dati, Prof. Antonio d’Acierno, [email protected] Introduzione alle basi di dati

BASI DI DATIBASI DI DATIBASI DI DATIBASI DI DATI

� Un file consente di memorizzare e cercare dati, ma Un file consente di memorizzare e cercare dati, ma Un file consente di memorizzare e cercare dati, ma Un file consente di memorizzare e cercare dati, ma fornisce (ad esempio) solo meccanismi molto rozzi fornisce (ad esempio) solo meccanismi molto rozzi fornisce (ad esempio) solo meccanismi molto rozzi fornisce (ad esempio) solo meccanismi molto rozzi per lper lper lper l’’’’accesso e la condivisioneaccesso e la condivisioneaccesso e la condivisioneaccesso e la condivisione– Usando lUsando lUsando lUsando l’’’’approccio approccio approccio approccio convenzionaleconvenzionaleconvenzionaleconvenzionale i dati sono logicamente i dati sono logicamente i dati sono logicamente i dati sono logicamente privati. privati. privati. privati.

� Dati di interesse per piDati di interesse per piDati di interesse per piDati di interesse per piùùùù applicazioni devono allora applicazioni devono allora applicazioni devono allora applicazioni devono allora essere replicati, con problemi di ridondanza ed essere replicati, con problemi di ridondanza ed essere replicati, con problemi di ridondanza ed essere replicati, con problemi di ridondanza ed incoerenza.incoerenza.incoerenza.incoerenza.

� I sistemi di gestione della basi dati nascono, in I sistemi di gestione della basi dati nascono, in I sistemi di gestione della basi dati nascono, in I sistemi di gestione della basi dati nascono, in buona misura, per superare questi ed altri problemi. buona misura, per superare questi ed altri problemi. buona misura, per superare questi ed altri problemi. buona misura, per superare questi ed altri problemi.

10 AA 2010-2011, Basi di Dati, Prof. Antonio d’Acierno, [email protected] Introduzione alle basi di dati

Basi di Dati <=> collezione di dati gestita da un DBMS.

DBMSDBMSDBMSDBMS

� Un Data Base Un Data Base Un Data Base Un Data Base ManagementManagementManagementManagement System (DBMS, Sistema di System (DBMS, Sistema di System (DBMS, Sistema di System (DBMS, Sistema di Gestione di Basi Dati) nasce con lGestione di Basi Dati) nasce con lGestione di Basi Dati) nasce con lGestione di Basi Dati) nasce con l’’’’ intento di gestire DB:intento di gestire DB:intento di gestire DB:intento di gestire DB:

�Grandi, Condivisi e PersistentiGrandi, Condivisi e PersistentiGrandi, Condivisi e PersistentiGrandi, Condivisi e Persistenti– garantendo la lorogarantendo la lorogarantendo la lorogarantendo la loro

�AffidabilitAffidabilitAffidabilitAffidabilitàààà e Privatezzae Privatezzae Privatezzae Privatezza– conconconcon

� Efficienza ed Efficacia.Efficienza ed Efficacia.Efficienza ed Efficacia.Efficienza ed Efficacia.

11 AA 2010-2011, Basi di Dati, Prof. Antonio d’Acierno, [email protected] Introduzione alle basi di dati

Modelli dei DatiModelli dei DatiModelli dei DatiModelli dei Dati

� Un modello dei dati Un modello dei dati Un modello dei dati Un modello dei dati èèèè un insieme di concetti un insieme di concetti un insieme di concetti un insieme di concetti utilizzati per organizzare i dati di interesse e utilizzati per organizzare i dati di interesse e utilizzati per organizzare i dati di interesse e utilizzati per organizzare i dati di interesse e descriverne la struttura in modo che essa sia descriverne la struttura in modo che essa sia descriverne la struttura in modo che essa sia descriverne la struttura in modo che essa sia comprensibile ad un elaboratore.comprensibile ad un elaboratore.comprensibile ad un elaboratore.comprensibile ad un elaboratore.

� Ogni modello fornisce meccanismi di Ogni modello fornisce meccanismi di Ogni modello fornisce meccanismi di Ogni modello fornisce meccanismi di strutturazione (<=> costruttori di tipo dei strutturazione (<=> costruttori di tipo dei strutturazione (<=> costruttori di tipo dei strutturazione (<=> costruttori di tipo dei linguaggi tradizionali) che permettono di costruire linguaggi tradizionali) che permettono di costruire linguaggi tradizionali) che permettono di costruire linguaggi tradizionali) che permettono di costruire nuovi tipi sulla base di tipi elementari predefiniti. nuovi tipi sulla base di tipi elementari predefiniti. nuovi tipi sulla base di tipi elementari predefiniti. nuovi tipi sulla base di tipi elementari predefiniti.

12 AA 2010-2011, Basi di Dati, Prof. Antonio d’Acierno, [email protected] Introduzione alle basi di dati

Modelli dei Dati (continua)Modelli dei Dati (continua)Modelli dei Dati (continua)Modelli dei Dati (continua)

� Modello Gerarchico Modello Gerarchico Modello Gerarchico Modello Gerarchico – Anni Anni Anni Anni ’’’’60: dati organizzati in alberi60: dati organizzati in alberi60: dati organizzati in alberi60: dati organizzati in alberi

� Modello ReticolareModello ReticolareModello ReticolareModello Reticolare– Anni Anni Anni Anni ’’’’70: dati organizzati in grafi70: dati organizzati in grafi70: dati organizzati in grafi70: dati organizzati in grafi

� Modello RelazionaleModello RelazionaleModello RelazionaleModello Relazionale– Definito allDefinito allDefinito allDefinito all’’’’inizio degli anni inizio degli anni inizio degli anni inizio degli anni ’’’’70, prime implementazioni fine anni 70, prime implementazioni fine anni 70, prime implementazioni fine anni 70, prime implementazioni fine anni ’’’’70; struttura tabellare70; struttura tabellare70; struttura tabellare70; struttura tabellare� Attualmente Attualmente Attualmente Attualmente èèèè il piil piil piil piùùùù diffuso ed il pidiffuso ed il pidiffuso ed il pidiffuso ed il piùùùù consolidato.consolidato.consolidato.consolidato.� Permette di definire tipi attraverso il concetto di relazione, oPermette di definire tipi attraverso il concetto di relazione, oPermette di definire tipi attraverso il concetto di relazione, oPermette di definire tipi attraverso il concetto di relazione, organizzando rganizzando rganizzando rganizzando i dati in record di lunghezza fissa.i dati in record di lunghezza fissa.i dati in record di lunghezza fissa.i dati in record di lunghezza fissa.

� Una relazione Una relazione Una relazione Una relazione èèèè tipicamente rappresentata attraverso una tabella.tipicamente rappresentata attraverso una tabella.tipicamente rappresentata attraverso una tabella.tipicamente rappresentata attraverso una tabella.

� Modelli ad OggettiModelli ad OggettiModelli ad OggettiModelli ad Oggetti– ObjectObjectObjectObject orientedorientedorientedoriented: dati organizzati in : dati organizzati in : dati organizzati in : dati organizzati in ““““oggettioggettioggettioggetti””””– ObjectObjectObjectObject relationalrelationalrelationalrelational: tabella generalizzata: tabella generalizzata: tabella generalizzata: tabella generalizzata

13 AA 2010-2011, Basi di Dati, Prof. Antonio d’Acierno, [email protected] Introduzione alle basi di dati

Modelli dei Dati (continua)Modelli dei Dati (continua)Modelli dei Dati (continua)Modelli dei Dati (continua)

� I modelli citati sono effettivamente disponibili su DBMS I modelli citati sono effettivamente disponibili su DBMS I modelli citati sono effettivamente disponibili su DBMS I modelli citati sono effettivamente disponibili su DBMS commerciali. commerciali. commerciali. commerciali.

� Essi vengono allora detti logici per enfatizzare che le Essi vengono allora detti logici per enfatizzare che le Essi vengono allora detti logici per enfatizzare che le Essi vengono allora detti logici per enfatizzare che le strutture dati usate sono, nella loro astrattezza, immagine strutture dati usate sono, nella loro astrattezza, immagine strutture dati usate sono, nella loro astrattezza, immagine strutture dati usate sono, nella loro astrattezza, immagine di una particolare organizzazione.di una particolare organizzazione.di una particolare organizzazione.di una particolare organizzazione.

� I modelli di dati concettuali, invece, sono utilizzati per I modelli di dati concettuali, invece, sono utilizzati per I modelli di dati concettuali, invece, sono utilizzati per I modelli di dati concettuali, invece, sono utilizzati per descrivere i dati e le informazioni di interesse in maniera descrivere i dati e le informazioni di interesse in maniera descrivere i dati e le informazioni di interesse in maniera descrivere i dati e le informazioni di interesse in maniera indipendente dal modello logico (e cioindipendente dal modello logico (e cioindipendente dal modello logico (e cioindipendente dal modello logico (e cioèèèè dal DBMS) che verrdal DBMS) che verrdal DBMS) che verrdal DBMS) che verrààààpoi utilizzato nella fase realizzativa.poi utilizzato nella fase realizzativa.poi utilizzato nella fase realizzativa.poi utilizzato nella fase realizzativa.

14 AA 2010-2011, Basi di Dati, Prof. Antonio d’Acierno, [email protected] Introduzione alle basi di dati

Schemi e IstanzeSchemi e IstanzeSchemi e IstanzeSchemi e Istanze

� Nei DB esiste una parte che Nei DB esiste una parte che Nei DB esiste una parte che Nei DB esiste una parte che èèèè sostanzialmente invariante nel sostanzialmente invariante nel sostanzialmente invariante nel sostanzialmente invariante nel tempo (schema della basi di dati) ed un parte variabile nel tempo (schema della basi di dati) ed un parte variabile nel tempo (schema della basi di dati) ed un parte variabile nel tempo (schema della basi di dati) ed un parte variabile nel tempo (istanza o stato della base di dati).tempo (istanza o stato della base di dati).tempo (istanza o stato della base di dati).tempo (istanza o stato della base di dati).

� Si dice che lo schema Si dice che lo schema Si dice che lo schema Si dice che lo schema èèèè la parte intensionale mentre lla parte intensionale mentre lla parte intensionale mentre lla parte intensionale mentre l’’’’istanza istanza istanza istanza èèèè la componente estensionale di una base di dati. la componente estensionale di una base di dati. la componente estensionale di una base di dati. la componente estensionale di una base di dati.

15 AA 2010-2011, Basi di Dati, Prof. Antonio d’Acierno, [email protected] Introduzione alle basi di dati

Livelli di Astrazione di un DBMSLivelli di Astrazione di un DBMSLivelli di Astrazione di un DBMSLivelli di Astrazione di un DBMS

� Esiste una proposta di Esiste una proposta di Esiste una proposta di Esiste una proposta di architettura standardizzata architettura standardizzata architettura standardizzata architettura standardizzata per DBMS articolata su 3 per DBMS articolata su 3 per DBMS articolata su 3 per DBMS articolata su 3 livelli (logico, interno ed livelli (logico, interno ed livelli (logico, interno ed livelli (logico, interno ed esterno) per ciascuno dei quali esterno) per ciascuno dei quali esterno) per ciascuno dei quali esterno) per ciascuno dei quali esiste un schema:esiste un schema:esiste un schema:esiste un schema:

�Schema logicoSchema logicoSchema logicoSchema logico�Schema internoSchema internoSchema internoSchema interno�Schema esternoSchema esternoSchema esternoSchema esterno

16 AA 2010-2011, Basi di Dati, Prof. Antonio d’Acierno, [email protected] Introduzione alle basi di dati

Indipendenza dei DatiIndipendenza dei DatiIndipendenza dei DatiIndipendenza dei Dati

� Indipendenza dei datiIndipendenza dei datiIndipendenza dei datiIndipendenza dei dati– Mediante la definizione a livelli Mediante la definizione a livelli Mediante la definizione a livelli Mediante la definizione a livelli èèèè possibile ottenere che le possibile ottenere che le possibile ottenere che le possibile ottenere che le applicazioni siano indipendenti applicazioni siano indipendenti applicazioni siano indipendenti applicazioni siano indipendenti dal modo in cui i dati sono dal modo in cui i dati sono dal modo in cui i dati sono dal modo in cui i dati sono organizzati.organizzati.organizzati.organizzati.

� Indipendenza logica dei dati:Indipendenza logica dei dati:Indipendenza logica dei dati:Indipendenza logica dei dati:– Attraverso il meccanismo delle Attraverso il meccanismo delle Attraverso il meccanismo delle Attraverso il meccanismo delle viste le applicazioni possono viste le applicazioni possono viste le applicazioni possono viste le applicazioni possono essere rese indipendenti dallo essere rese indipendenti dallo essere rese indipendenti dallo essere rese indipendenti dallo schema logico della base dei datischema logico della base dei datischema logico della base dei datischema logico della base dei dati

� Indipendenza fisica dei dati:Indipendenza fisica dei dati:Indipendenza fisica dei dati:Indipendenza fisica dei dati:– Attraverso lo schema logico si Attraverso lo schema logico si Attraverso lo schema logico si Attraverso lo schema logico si èèèègarantiti dalla differente garantiti dalla differente garantiti dalla differente garantiti dalla differente implementazione fisica dei datiimplementazione fisica dei datiimplementazione fisica dei datiimplementazione fisica dei dati

17 AA 2010-2011, Basi di Dati, Prof. Antonio d’Acierno, [email protected] Introduzione alle basi di dati

Linguaggi per DBLinguaggi per DBLinguaggi per DBLinguaggi per DB

� Su un DBMS Su un DBMS Su un DBMS Su un DBMS èèèè possibile ovviamente specificare operazioni possibile ovviamente specificare operazioni possibile ovviamente specificare operazioni possibile ovviamente specificare operazioni attraverso linguaggi:attraverso linguaggi:attraverso linguaggi:attraverso linguaggi:– DDL (DDL (DDL (DDL (Data Definition LanguageData Definition LanguageData Definition LanguageData Definition Language) utilizzati per la definizione di ) utilizzati per la definizione di ) utilizzati per la definizione di ) utilizzati per la definizione di schemi.schemi.schemi.schemi.

– DML (DML (DML (DML (Data Manipulation LanguageData Manipulation LanguageData Manipulation LanguageData Manipulation Language) utilizzati per interrogazioni ed ) utilizzati per interrogazioni ed ) utilizzati per interrogazioni ed ) utilizzati per interrogazioni ed aggiornamenti.aggiornamenti.aggiornamenti.aggiornamenti.

– DCL (DCL (DCL (DCL (Data Control LanguageData Control LanguageData Control LanguageData Control Language) utilizzati per definire utenti e ) utilizzati per definire utenti e ) utilizzati per definire utenti e ) utilizzati per definire utenti e privilegi.privilegi.privilegi.privilegi.

� Alcuni linguaggi (SQL) integrano le varie funzionalitAlcuni linguaggi (SQL) integrano le varie funzionalitAlcuni linguaggi (SQL) integrano le varie funzionalitAlcuni linguaggi (SQL) integrano le varie funzionalitàààà. . . .

18 AA 2010-2011, Basi di Dati, Prof. Antonio d’Acierno, [email protected] Introduzione alle basi di dati

Accesso ai DatiAccesso ai DatiAccesso ai DatiAccesso ai Dati

� LLLL’’’’ accesso ai dati può avvenire tramite:accesso ai dati può avvenire tramite:accesso ai dati può avvenire tramite:accesso ai dati può avvenire tramite:– Linguaggi testuali interattivi.Linguaggi testuali interattivi.Linguaggi testuali interattivi.Linguaggi testuali interattivi.

– Comandi immersi in linguaggi tradizionaliComandi immersi in linguaggi tradizionaliComandi immersi in linguaggi tradizionaliComandi immersi in linguaggi tradizionali

– Comandi simili a quelli interattivi immersi in Comandi simili a quelli interattivi immersi in Comandi simili a quelli interattivi immersi in Comandi simili a quelli interattivi immersi in linguaggi/ambienti di sviluppo ad hoc.linguaggi/ambienti di sviluppo ad hoc.linguaggi/ambienti di sviluppo ad hoc.linguaggi/ambienti di sviluppo ad hoc.

– Interfacce amichevoli.Interfacce amichevoli.Interfacce amichevoli.Interfacce amichevoli.

19 AA 2010-2011, Basi di Dati, Prof. Antonio d’Acierno, [email protected] Introduzione alle basi di dati

Utenti di un DBMSUtenti di un DBMSUtenti di un DBMSUtenti di un DBMS

� Amministratore del DB: responsabile delle Amministratore del DB: responsabile delle Amministratore del DB: responsabile delle Amministratore del DB: responsabile delle progettazione, del controllo e della progettazione, del controllo e della progettazione, del controllo e della progettazione, del controllo e della amministrazione.amministrazione.amministrazione.amministrazione.

� Progettisti e realizzatori di applicazioni, che Progettisti e realizzatori di applicazioni, che Progettisti e realizzatori di applicazioni, che Progettisti e realizzatori di applicazioni, che definiscono ed implementano i programmi che definiscono ed implementano i programmi che definiscono ed implementano i programmi che definiscono ed implementano i programmi che accedono al DB.accedono al DB.accedono al DB.accedono al DB.

� Utenti:Utenti:Utenti:Utenti:– terminalisti: utilizzano programmi che realizzano terminalisti: utilizzano programmi che realizzano terminalisti: utilizzano programmi che realizzano terminalisti: utilizzano programmi che realizzano attivitattivitattivitattivitàààà standard predefinitestandard predefinitestandard predefinitestandard predefinite

– casuali: in grado di utilizzare DML che realizzano casuali: in grado di utilizzare DML che realizzano casuali: in grado di utilizzare DML che realizzano casuali: in grado di utilizzare DML che realizzano navigazioni non standard.navigazioni non standard.navigazioni non standard.navigazioni non standard.

20 AA 2010-2011, Basi di Dati, Prof. Antonio d’Acierno, [email protected] Introduzione alle basi di dati

Vantaggi di un DBMSVantaggi di un DBMSVantaggi di un DBMSVantaggi di un DBMS

� Permettono di vedere i dati come una risorsa comune Permettono di vedere i dati come una risorsa comune Permettono di vedere i dati come una risorsa comune Permettono di vedere i dati come una risorsa comune a disposizione di tutti gli aventi diritto.a disposizione di tutti gli aventi diritto.a disposizione di tutti gli aventi diritto.a disposizione di tutti gli aventi diritto.

� Controllo centralizzato dei dati.Controllo centralizzato dei dati.Controllo centralizzato dei dati.Controllo centralizzato dei dati.

� Si riducono ridondanze e inconsistenze.Si riducono ridondanze e inconsistenze.Si riducono ridondanze e inconsistenze.Si riducono ridondanze e inconsistenze.

� Indipendenza dei datiIndipendenza dei datiIndipendenza dei datiIndipendenza dei dati

21 AA 2010-2011, Basi di Dati, Prof. Antonio d’Acierno, [email protected] Introduzione alle basi di dati

Svantaggi di un DBMSSvantaggi di un DBMSSvantaggi di un DBMSSvantaggi di un DBMS

� Costo (hw, Costo (hw, Costo (hw, Costo (hw, swswswsw, competenze), competenze), competenze), competenze)

� Non tutti i servizi offerti da un DBMS sono Non tutti i servizi offerti da un DBMS sono Non tutti i servizi offerti da un DBMS sono Non tutti i servizi offerti da un DBMS sono necessarinecessarinecessarinecessari