La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

DB- Sistemi Informativi Insieme di “strutture” in grado di acquisire, elaborare, trasmettere ed archiviare informazioni in genere ad uso di un’organizzazione.

Presentazioni simili


Presentazione sul tema: "DB- Sistemi Informativi Insieme di “strutture” in grado di acquisire, elaborare, trasmettere ed archiviare informazioni in genere ad uso di un’organizzazione."— Transcript della presentazione:

1 DB- Sistemi Informativi Insieme di “strutture” in grado di acquisire, elaborare, trasmettere ed archiviare informazioni in genere ad uso di un’organizzazione (azienda o istituzione).

2 Dato <> Informazione l I dati sono registrazioni della descrizione di una qualsiasi caratteristica della realtà, su un supporto che ne garantisca la conservazione, la comprensibilità e la reperibilità. l L’ informazione produce variazioni nel patrimonio conoscitivo di un soggetto. Proviene dai dati, ma i dati devono essere inseriti in un contesto interpretativo

3 DBMS (Database Management System) Obiettivo: gestione strutturata di dati, organizzati in modo omogeneo. Base di dati: l Collezione di dati organizzati in modo coerente (un insieme casuale di dati non è una base di dati !) l Modella alcuni aspetti del mondo reale l Costruito con funzionalità ben precise, note fin dall’inizio della progettazione.

4 Esempi di basi dati: l Rubrica telefonica personale l anagrafe l segreteria studenti dell’università l banca dati centrale del ministero delle finanze l archivio di una biblioteca, di un laboratorio d’analisi mediche, di un museo l banca dati di una carta di credito l banca dati delle prenotazioni dei voli di una compagnia aerea

5 Basi di dati: operazioni l Definizione della base di dati –quali informazioni rappresentare –quali relazioni tra le informazioni l Manipolazione –inserimento di dati –cancellazione di dati –aggiornamento (update) –interrogazione l Gestione di operazioni da parte di utenti multipli l Protezione e sicurezza dei dati

6 Livelli di rappresentazione l Livello fisico: come i dati sono memorizzati e organizzati su uno o più supporti di memoria secondaria l Livello logico: come i dati sono organizzati secondo il modello logico adottato (relazionale, gerarchico, ad oggetti etc.) l Livello concettuale: come i dati sono organizzati secondo uno schema concettuale l Livello esterno: come i dati appaiono o vengono presentati all’utente (possono essere anche programmi)

7 Livelli di rappresentazione Vista 1Vista 2Vista n Livello logico Livello fisico Livello concettuale

8 Figure professionali (1) l DB designer –schema concettuale (astratto) della base di dati –mapping su un modello dei dati gerarchico relazionale object oriented...

9 Figure professionali (2) l DB programmer (realizzazione della base di dati) l DB administrator (gestione della base dati) l Users utenti esperti (usano un linguaggio di interrogazione) utenti naive (interazioni predeterminate, forms) programmi

10 Modello relazionale l I dati sono organizzati in relazioni l le relazioni possono essere interpretate/visualizzate come tabelle l un database è un insieme di relazioni

11 Rappresentazione tabellare dei dati: esempio Libro N.Inv Autore Titolo Anno_ed. Casa ed. Colloc.

12 Esempio rubrica COGNOMENOMETEL. TanziRosario FedericiSusanna De BernardiSilvio

13 Modello relazionale l Relazione su due insiemi A e B è un sottoinsieme del prodotto cartesiano A x B Esempio sposato_con  Persone x Persone figlio_di  Persone x Persone vive_a  Persone x Città l Analogamente si possono considerare relazioni tra molti insiemi: A1 x ….xAn

14 Esempio di relazione l Persone= {Paolo, Luca,Mario} Città={Torino,Roma} l Persone x CittàVive_a Mario PersoneCittà Paolo Luca Torino Roma Città Persone Paolo Luca MarioRoma Torino

15 Figlio di (Persone x Persone) Persone Paolo Carla MarioFlavio Luca Anna Persone Anna Luca FlavioMario Carla Paolo Sono relazioni diverse!

16 Relazioni e Attributi Attributi: nomi che specificano un ruolo in una relazione, esempi: l sposato_con(Marito, Moglie) l figlio_di(Figlio, Genitore) l vive_a(Nome,Citta,Provincia) libro( N.Inv, Autore, Titolo, Anno_edizione, Casa_editrice, Collocazione) l Gli attributi devono avere nomi differenti

17 ESEMPIO DATABASE ESAMI l Prima idea: un’unica tabella: ESAME(Nome,Cognome,Matricola,Titolo, Docente,Voto,Lode)

18 Il database contiene informazione ridondante: l per ogni esame sostenuto si ripetono tutti i dati dello studente l per ogni corso si ripetono titolo e docente Organizzazione Inefficiente!

19 Organizzazione migliore: l STUDENTE(Nome,Cognome,Matricola,Data di Nascita) l CORSI(Titolo,Docente,Codice Corso) l ESAMI(Codice Corso,Voto,Lode,Matricola)

20 Terminologia l DOMINIO: insieme di valori degli attributi –es. Nomi di persona, Nomi di città, Numeri interi, stringhe di al più 80 caratteri l FORMATO: rappresentazione degli elementi di un dominio –es. tre cifre decimali per i reali

21 l SCHEMA DI RELAZIONE R(A 1, …, A_ n ) R relazione A i attributi l ISTANZA DI RELAZIONE (o semplicemente relazione) r(R) = { } t= : n-tupla l I singoli valori v i appartengono al dominio dell’attributo A i

22 l Istanza di relazione = insieme non ordinato di tuple – Non ci possono essere tuple ripetute – l’ordine delle tuple non conta l Database = insieme di istanze di relazioni Terminologia alternativa: – tuple: records – attributi: campi

23 La tabella rubrica Rubrica(Cognome,Nome,Tel) COGNOMENOMETEL. TanziRosario FedericiSusanna De BernardiSilvio schema nomi degli attributi tuple

24 Informazione incompleta: Valori Nulli Il valore speciale “null” aggiunto a tutti i domini, per indicare assenza di valore indica: l valore mancante, oppure l valore sconosciuto l Esempio PERSONE(Cognome,Nome,Indirizzo,Telefono) Il valore di Telefono potrebbe essere null.

25 Vincoli sulle Relazioni l I valori contenuti nelle tabelle possono essere soggetti a vari tipi di vincoli che dipendono dalla ‘realtà’ che si vuole rappresantare: l vincoli di dominio: valori dei singoli attributi l vincoli di tupla: valori di attributi correlati in una tupla l vincoli di integrità valori di attributi in tuple diverse (anche in relazioni diverse)

26 Vincoli di dominio vincoli sui valori dei singoli attributi (vincoli di dominio), es: l dato ESAMI(Studente,Voto, Lode,Corso) deve essere Voto >=18 AND Voto <=30 l Vincoli sul valore di un attributo data

27 Vincoli di tupla vincoli sui valori di attributi correlati, es: l Data la relazione ESAMI come prima deve essere not (Lode = Yes) OR Voto = 30 equivalente a Lode= No OR Voto = 30 l Data la relazione PAGAMENTI(Data,Importo,Ritenute,Netto) deve essere Netto = Importo - Ritenute

28 Connettivi booleani: tavole di verità Negazione Congiunzione Disgiunzione

29 Relazioni boolene l not (A and B) = not (A) or not(B) l not (A or B) = not (A) and not(B) l La funzione imp (implica) A imp B =def not(A) or B l La funzione XOR (OR esclusivo) A xor B =def (A or B) and not(A and B)

30 Implicazione Sono logicamente equivalenti: l Se A allora B l A solo se B l A implica B Esempio: l Se Mario viene alla festa Anna viene alla festa l Mario viene alla festa solo se Anna viene alla festa l Mario viene alla festa implica che Anna viene alla festa Tutte vengono rappresentate con not(A) or B o equivalentemente con A imp B

31 Esempio Vincolo (complesso) Supponiamo che STUDENTE contenga anche gli attributi l Borsa di Studio: valori {Yes, No} l Reddito (della famiglia): euro l Residente (nella città sede univ.): {Yes, No} Uno studente ha diritto ad una borsa se/solo se –ha una media >= 27 e un reddito <= 20000, oppure – non è residente e ha una media >= 25 e un reddito <=25000

32 Codifica del Vincolo (media >= 27) AND (reddito <= 20000) OR ((residente = NO) AND (media >= 25) AND (reddito <=25000))

33 Vincoli di chiave l superchiave: sottoinsieme SK di attributi di una relazione per cui se i  j allora t i [SK]  t j [SK] Una superchiave identifica un’entità in modo univoco in una relazione l CHIAVE PRIMARIA = superchiave minimale non ci possono essere righe diverse con la stessa chiave primaria (Indichiamo in modo sottolineato gli attributi che formano la chiave primaria)

34 VINCOLI DI INTEGRITA’ sull’entità : chiave primaria  null l integrità referenziale: consistenza tra tuple di due relazioni l integrità semantica: vincoli che dipendono dalla realtà rappresentata (altro es. numero di libri in prestito a ciascun utente < 5, in una relazione in cui ogni prestito compaia come una tupla separata)

35 Vincoli di Integrità referenziali l In un database relazionale le tabelle sono collegate tra loro tramite i valori di attributi correlati (o comuni) l Esempio –Il collegamento tra la relazione ESAMI e STUDENTI puo’ essere espresso dall’attributo comune Matricola –Il collegamento tra la relazione CORSI e ESAMI puo’ essere espresso dall’attributo comune Codice Corso

36 l Un vincolo di integrità referenziale tra un insieme di attributi X di una relazione R1 e una relazione R2 è soddisfatto se: i valori di ciascuna tupla di R1 per gli attributi X esistono come valori della chiave primaria di R2 l In questo caso si dice anche che X è una chiave esterna di R1

37 ESEMPIO: Vincoli di Integrità referenziale l STUDENTE(Nome,Cognome,Matricola,Data di Nascita) l CORSI(Titolo,Docente,Codice Corso) l ESAMI(Codice Corso,Voto,Lode,Matricola) Vincolo referenziale: tra Matricola di ESAMI e STUDENTE: i valori di Matricola di Esami devono esistere come valori della chiave primaria (Matricola di STUDENTE)

38 Funzionalità del DBMS relazionale l Funzioni per –definizione della base di dati –inserimento / rimozione /aggiornamento di informazioni deve soddisfare i vincoli! –Interrogazione l Access DBMS relazionale in ambiente Office


Scaricare ppt "DB- Sistemi Informativi Insieme di “strutture” in grado di acquisire, elaborare, trasmettere ed archiviare informazioni in genere ad uso di un’organizzazione."

Presentazioni simili


Annunci Google